home *** CD-ROM | disk | FTP | other *** search
/ Shareware Overload Trio 2 / Shareware Overload Trio Volume 2 (Chestnut CD-ROM).ISO / dir27 / grphca22.zip / GRAPHICA.HLP < prev    next >
Text File  |  1993-02-03  |  88KB  |  2,686 lines

  1. \about
  2. \
  3.                              G R A P H I C A
  4.  
  5.      GRAPHICA is a command-driven interactive graphics program for making
  6.  presentation quality graphs on a computer.  This two-dimensional data
  7.  plotting system is designed specifically for scientific and engineering
  8.  applications.  GRAPHICA is easy to use, interactive, powerful and it runs on
  9.  personal computers, mainframes and workstations.  With GRAPHICA, you can:
  10.  
  11.      o   plot functions or data files
  12.      o   evaluate and plot mathematical expressions
  13.      o   fit spline or polynomials to data
  14.      o   display and print a graph on hardcopy devices
  15.      o   export graphs in HPGL, PostScript or other formats
  16.      o   draw text in roman, greek and cyrillic fonts
  17.      o   get online help
  18. \instructions
  19.  
  20.  Instructions
  21.  
  22.      Invoking the HELP utility
  23.      -------------------------
  24.  The HELP utility displays information about requested GRAPHICA topics.  From
  25.  the GRAPHICA command level (in response to the $ prompt), you can display a
  26.  list of topics for which help information is available by typing HELP (or ?)
  27.  and pressing the RETURN key.  The system responds by displaying a brief
  28.  description of GRAPHICA, followed by a list of topics for which help is
  29.  available, followed by the prompt "Topic?".
  30.  
  31.      Specifying topic names
  32.      ----------------------
  33.  To display information on a particular topic, respond to the prompt by
  34.  typing the name of the topic and pressing the RETURN key.
  35.  
  36.      Subtopic information
  37.      --------------------
  38.  The information displayed by HELP on a particular topic includes a
  39.  description of the topic and a list of subtopics that further describe the
  40.  topic.  To display subtopic information, type one of the subtopic names from
  41.  the list in response to the "Subtopic?" prompt.
  42.  
  43.      Special responses to prompts
  44.      ----------------------------
  45.  If you press RETURN in response to the "Subtopic?" prompt instead of typing
  46.  a subtopic name, the "Topic?" prompt reappears,  enabling you to enter
  47.  another topic name.  If you press RETURN in response to the "Topic?" prompt,
  48.  you will exit from HELP.
  49.  
  50.  You can type a question mark (?) in response to any of the prompts to
  51.  redisplay the most recently requested text and a list of topic or subtopic
  52.  names.  For example, if you type ? in response to the "Subtopic?" prompt, a
  53.  list of subtopics is displayed followed by the "Subtopic?" prompt.
  54. \arrow
  55. \noarrow
  56. \show arrows
  57.  Syntax:
  58.  
  59.      arrow {tag} {from sx,sy} {to ex,ey} {len} {ang} {type (1-5)}
  60.      noarrow {tag}
  61.      show arrows
  62.  
  63.  Description:
  64.  
  65.      The 'arrow' command is used to draw arrows.  All positions (x,y) default
  66.  to 0,0.  The x and y values are real numbers.  These values can be either in
  67.  the paper (inches) or the graph coordinate system (mapped units) depending on
  68.  the status of the location flag (see the location command).
  69.  
  70.      The tag is an integer that may be used to identify a given arrow.  If no
  71.  tag is given, the lowest unused tag value is assigned automatically.  This tag
  72.  can be used to delete or change a specific arrow.  To change any attribute of
  73.  an existing arrow, use the arrow command with the appropriate tag, and specify
  74.  the parts of the arrow to be changed.
  75.  
  76.      An optional arrow type may be specified.  The default arrow type is 3 or
  77.  full.  Here's a list of the available arrow types:
  78.  
  79.      type = 1           single wing
  80.      type = 2           single wing with a back line
  81.      type = 3           full
  82.      type = 4           full with a half dimension line
  83.      type = 5           full with a dimension line
  84.  
  85.      The arrowhead length and width are 20% and 6% of the total arrow length.
  86.  If the arrowhead length is less than 1/8", it will remain at 1/8" regardless
  87.  of the total arrow length.
  88.  
  89.  Examples:
  90.  
  91.  to set an arrow pointing from the origin to (1,2) use:
  92.      graphica> arrow to 1.0,2.0
  93.  
  94.  to set an arrow from (-10,4) to (-5,5), and tag the arrow number 3, use:
  95.      graphica> arrow 3 from -10,4 to -5,5
  96.  
  97.  to change the preceding arrow begin at 1.1,1.3, use:
  98.      graphica> arrow 3 from 1.1,1.3
  99.  
  100.  to delete arrow number 2 use:
  101.      graphica> noarrow 2
  102.  
  103.  to delete all arrows use:
  104.      graphica> noarrow
  105. \audit
  106. \show audit
  107.  Syntax:
  108.  
  109.      audit {'filename'}
  110.      show audit
  111.  
  112.  Description:
  113.  
  114.      This command makes a copy of all your input commands into the given
  115.  filename.  You may later use it as a 'load' or 'input' file.  'show audit'
  116.  tells whether auditing is active or not.
  117.  
  118.  Examples:
  119.  
  120.      graphica> audit 'trace.dat'
  121.      graphica> audit
  122.  
  123.  in the latter case, a file called GRAPHICA.ODT will contain a audit trace of
  124.  all commands.
  125. \autoscale
  126. \noautoscale
  127. \show autoscale
  128.  Syntax:
  129.  
  130.      autoscale {x} {y} {y2} {x2}
  131.      noautoscale
  132.      show autoscale
  133.  
  134.  Description:
  135.  
  136.      Frequently, it is difficult for the user to select suitable axis limits
  137.  and step sizes, especially if the data being plotted varies greatly from one
  138.  execution of the program to the next.  For this reason GRAPHICA provides
  139.  automatic axis scaling for all axes.
  140.  
  141.      The autoscale command sets the autoscaling feature for an axis.  If an
  142.  axis is not autoscaled, the default or current map is used when data is
  143.  plotted.
  144.  
  145.  Examples:
  146.  
  147.      graphica> autoscale x
  148.      graphica> noautoscale
  149.  
  150.  Another example.  Suppose you have a data file with two columns of data,
  151.  x and y but don't know their ranges.  You could do the following:
  152.  
  153.      graphica> data 'mydata.dat'
  154.      graphica> draw data
  155.      graphica> plot x y
  156.  
  157.  and determine how the data looks.  The axes are autoscaled.  Then you could
  158.  say,
  159.  
  160.      graphica> noaxes
  161.      graphica> map x 0 100 y 30 200
  162.  
  163.  where the mapped range would be your own values and then,
  164.  
  165.      graphica> draw x y
  166.  
  167.  would draw the axes with the desired mapped range.
  168. \axes
  169. \axis
  170. \noaxes
  171. \show axes
  172. \show axis
  173.  Syntax:
  174.  
  175.      axes
  176.      noaxes
  177.      show axes
  178.  
  179.  Description:
  180.  
  181.      The 'axes' command performs a similar function to that of the 'draw'
  182.  command.  However, only those axes that have been previously mapped are drawn
  183.  with this command.
  184.  
  185.      The 'noaxes' command will delete any previously specified axes, so the
  186.  effect is as if the axes had never been drawn.  It is very useful for one
  187.  important reason:  GRAPHICA maintains a list in memory of all the axes that
  188.  have been drawn on the same page.  For example, if you had 2 graphs on one
  189.  page and needed to get a hardcopy, GRAPHICA would have to keep track of where
  190.  everything is so that it could give you an exact reproduction on paper of
  191.  what you had on your screen.  The 'noaxes' command effectively wipes out all
  192.  traces of previously drawn axes and lets you start anew.
  193.  
  194.  Examples:
  195.  
  196.      graphica> axes
  197.      graphica> noaxes
  198.      graphica> show axes
  199. \background
  200. \show background
  201.  Syntax:
  202.  
  203.      background {color} {integer}/<name>
  204.      show background
  205.  
  206.  Description:
  207.  
  208.      Sets the background color.  See the 'pen color' command for more details
  209.  on the kinds of colors available to use with this command.
  210.  
  211.  Examples:
  212.  
  213.      graphica> background 3
  214.      graphica> back red
  215. \beep
  216. \nobeep
  217.  Syntax:
  218.  
  219.      beep
  220.      nobeep
  221.  
  222.  Description:
  223.  
  224.      These two commands are used to toggle GRAPHICA beeps on and off.  The
  225.  default is on.
  226.  
  227.  Examples:
  228.  
  229.      graphica> beep
  230.  
  231.  activates the beep when the screen has been drawn or when there's an error.
  232.  
  233.      graphica> nobeep
  234.  
  235.  turns beeping off.
  236. \character
  237. \show character
  238.  Syntax:
  239.  
  240.      character {gap} {ratio} {size} {slant} <value>
  241.      character {font} <integer>
  242.      show character
  243.  
  244.  Description:
  245.  
  246.      This command sets character attributes such as the font type, character
  247.  gap, ratio, size and slant.
  248.  
  249.  Examples:
  250.  
  251.      graphica> character size 0.15 ratio 0.6
  252.      graphica> char gap 0.2 slant -10
  253.      graphica> character font 2
  254.  
  255.  
  256.  Also see CHARACTER FONT, CHARACTER GAP, CHARACTER RATIO, CHARACTER SIZE,
  257.  CHARACTER SLANT, SUBSCRIPT, SUPERSCRIPT and TEXT.
  258. \font
  259. \character font
  260. \show font
  261.  Syntax:
  262.  
  263.      {character} font <integer>
  264.      show font
  265.  
  266.  Description:
  267.  
  268.      A font is a collection of characters with a unified design.  The
  269.  command 'font' defines the font style for characters.  Characters may be
  270.  hardware or software generated.  The default font style is 1 which is a
  271.  software generated character.  The software generated character fonts are
  272.  based on a database originally created by Dr. A.V. Hershey while working
  273.  at the U.S. National Bureau of Standards.  They have been reorganized and
  274.  classified into several groups following the ASCII set.  The fonts
  275.  currently implemented are:
  276.  
  277.      font 1 = simplex roman
  278.      font 2 = simplex greek
  279.      font 3 = complex roman
  280.      font 4 = complex greek
  281.      font 5 = complex cyrillic
  282.  
  283.  and also
  284.  
  285.      font 6 = simplex script
  286.      font 7 = complex script
  287.  
  288.  on some systems.
  289.  
  290.  Example:
  291.  
  292.      graphica> font 3
  293.  
  294.  specifies a font of complex roman style.
  295. \character gap
  296.  Syntax:
  297.  
  298.      character gap <value>
  299.  
  300.  Description:
  301.  
  302.      The character gap attribute defines the spacing between adjacent
  303.  characters in a text string, in the direction of the character path.  The
  304.  character gap is defined as a fraction of the average character box size.
  305.  The default gap of 0.0 implies that adjacent character boxes are to be
  306.  abutting.  A gap of 1.0 implies that a gap, equivalent to the size of the
  307.  average characterbox, is to be inserted between adjacent characters along the
  308.  path.  A gap of -0.5 implies that character boxes are to partially overlap.
  309.  
  310.  Example:
  311.  
  312.      graphica> character gap 1.0
  313. \character ratio
  314.  Syntax:
  315.  
  316.      character ratio <value>
  317.  
  318.  Description:
  319.  
  320.      Specifies the ratio of the width of the character to its height.  The
  321.  default character ratio is 1.0.
  322.  
  323.  Example:
  324.  
  325.      graphica> character ratio 0.8
  326. \character size
  327.  Syntax:
  328.  
  329.      character size <value>
  330.  
  331.  Description:
  332.  
  333.      The 'character size' attribute defines the vertical size of the
  334.  characters in default units (in, cm, mm).  GRAPHICA sets the default
  335.  character size of all strings and labels to 0.17 in.
  336.  
  337.  Example:
  338.  
  339.      graphica> character size 0.2
  340. \character slant
  341.  Syntax:
  342.  
  343.      character slant <value>
  344.  
  345.  Description:
  346.  
  347.      Specifies the number of degrees the characters tilt from the vertical.
  348.  The sign convention for the direction of rotation is as follows:
  349.  
  350.      + clockwise
  351.      - counterclockwise
  352.  
  353.  The default character slant is 0.0 degrees.
  354.  
  355.  Example:
  356.  
  357.      graphica> character slant 25
  358. \cd
  359.  Syntax:
  360.  
  361.      cd <directory-name>
  362.  
  363.  Description:
  364.  
  365.      The 'cd' command changes the working directory to <directory-name>.
  366.  
  367.  Examples:
  368.  
  369.      graphica> cd c:\work
  370.      graphica> cd ..
  371.      graphica> cd c:\work\examples
  372. \circle
  373. \show circle
  374.  Syntax:
  375.  
  376.      circle {center at <x>,<y>} {radius <value>}
  377.      show circle
  378.  
  379.  Description:
  380.  
  381.      This command draws a circle with the given radius in user default units at
  382.  the given position (also in user default units).
  383.  
  384.  Example:
  385.  
  386.      graphica> circle radius 2.0 center at 3.0 4.0.
  387. \clear
  388.  Syntax:
  389.  
  390.      clear
  391.  
  392.  Description:
  393.  
  394.      The 'clear' command erases the current screen or output device as
  395.  specified by output.  It also resets all internal flags to the default state
  396.  found when entering GRAPHICA, i.e. no axes, no frame, default map, etc.  This
  397.  usually generates a formfeed on hardcopy devices.
  398.  
  399.  Example:
  400.  
  401.      graphica> clear
  402. \column
  403. \show columns
  404.  Syntax:
  405.  
  406.      column <integer> {is} {x} {y} {y2} {x2}
  407.      show columns
  408.  
  409.  Description:
  410.  
  411.      This powerful command allows the assignment of any data column read from
  412.  a user file to a certain axis.
  413.  
  414.  Examples:
  415.  
  416.      graphica> column 3 y2
  417.      graphica> column 2 is x 1 is y
  418.  
  419.  assigns column 3 of a data file to the x-axis and column 1 to the y-axis.
  420.  Then plot x y add points will generate a graph of column 3 versus column 1.
  421. \comment
  422.      Comments are supported as follows:  C, c, # or [ may appear in most
  423.  places in a line and GRAPHICA will ignore the rest of the line.  It will not
  424.  have this effect inside quotes or inside numbers (including complex numbers).
  425.  
  426.  Examples:
  427.  
  428.      graphica> [ test file ]
  429.      graphica> echo           # echo all commands
  430.      graphica> # map axes
  431.      graphica> map x 0 10 y 0 10
  432. \data
  433. \file
  434.  Syntax:
  435.  
  436.      data {from} {file} {'filename'} {autox}
  437.               x(1) y(1)
  438.               x(2) y(2)
  439.               x(3) y(3)
  440.                 .    .
  441.               x(n) y(n)
  442.      end
  443.  
  444.  Description:
  445.  
  446.      Discrete data contained in a file can displayed by specifying the name
  447.  of a data file (enclosed in quotes) on the plot command line.  Using the
  448.  'data' command simply reads in the data from a file, without plotting it.
  449.  
  450.      Data files may contain one or more data points per line.  If more than
  451.  one data point is encountered on a line, the data points in a given column
  452.  are referred to as columns.  If just one value is given on a line, the
  453.  program will use the number of the coordinate as the x value.  Coordinate
  454.  numbers start at 1 and are incremented for each data point read.  Lines
  455.  beginning with # (or [) will be treated as comments and ignored.
  456.  
  457.      Numbers can be separated by a comma or one or more blanks (free
  458.  format).  There is no limit to the number of data points possible (well,
  459.  until memory is exhausted.)  Optionally, data pairs read interactively can
  460.  be put on a single input line.  You can't input multiple columns of data
  461.  interactively, just two columns.
  462.  
  463.      If the data to be plotted is on a data file already, then the command
  464.  'data {from} {file}' opens the data file and reads pairs of points.  It
  465.  is possible to have several sets of data one after another in the same
  466.  data file.  Simply separate them sets by blank lines:  GRAPHICA will read
  467.  each set in sequence and plot the curves one after another.  This way you
  468.  won't need a bunch of data filenames in one script file: just put all the
  469.  data in one data file separated by blank lines.
  470.  
  471.      Several columns of data (up to 20) can be read in at once.  These can
  472.  in turn be assigned to different axes with the COLUMN command later on.
  473.  
  474.      Specifying 'autox' will result in the automatic assignment of the x
  475.  values starting from 1.  In other words, you may read in one or more columns
  476.  of y data only and GRAPHICA will assign the x values for you.
  477.  
  478.  Also see COLUMN.
  479.  
  480.  Examples:
  481.  
  482.      graphica> data 'gel3.dat'
  483.  
  484.      graphica> data file 'comfil'
  485.  
  486.      graphica> data                   # interactive data input only
  487.      graphica> 1.0,10.0 2.0,20.0 3.0,30.0 4.0,40.0 5.0,50.0
  488.      graphica> end
  489.  
  490.      graphica> data 'test.dat' autox
  491.  
  492.      In this last example, if 'test.dat' contained only one column of data
  493.  (the y values);, x would be assigned automatically by GRAPHICA.
  494. \del
  495. \delete
  496. \rm
  497.  Syntax:
  498.  
  499.      del <file>
  500.      rm <file>
  501.  
  502.  Description:
  503.  
  504.      The 'del' command deletes a file.  Pathnames, wildcards, and drive
  505.  designators may be used in the usual way for your operating system.  Other
  506.  operating system commands can be issued using the $ character followed
  507.  by a command.  'rm' works on the Apollo and Coherent versions.
  508.  
  509.  Examples:
  510.  
  511.      graphica> del script.plt
  512.  
  513.  deletes the ASCII file script.plt.
  514.  
  515.      graphica> del foo
  516.  
  517.  deletes the ASCII file foo.
  518. \digitize
  519.  Syntax:
  520.  
  521.      digitize
  522.  
  523.  Description:
  524.  
  525.      Establish an X-Y position from a point in the plot.  This position is
  526.  relative to the plot graphic origin (0,0), the lower left hand corner of the
  527.  paper on which the plot appears.  If there is a mouse present, the default
  528.  pointer will appear and you may move it around.  Press any mouse button and
  529.  the point will be digitized.  If no mouse driver is present, the keyboard
  530.  arrow keys will let you move a cross-hair until you hit enter.
  531.  
  532.  Example:
  533.  
  534.      graphica> digitize
  535. \dir
  536. \ls
  537.  Syntax:
  538.  
  539.      dir <file>
  540.      ls <file>
  541.  
  542.  Description:
  543.  
  544.      The 'dir' command lists the files and subdirectories in a directory.
  545.  Pathnames, wildcards, and drive designators may be used in the usual way for
  546.  your operating system.  Other operating system commands can be issued using
  547.  the $ character followed by a command.  'ls' works on the Apollo and
  548.  Coherent versions.
  549.  
  550.  Examples:
  551.  
  552.      graphica> dir
  553.  
  554.  lists all files in the current directory.
  555.  
  556.      graphica> dir *.plt
  557.  
  558.  lists all files with an extension of .plt in the current directory.
  559. \divisions
  560. \show divisions
  561.  Syntax:
  562.  
  563.      divisions {x} {y} {y2} {x2} <major> <minor>
  564.      show divisions
  565.  
  566.  Description:
  567.  
  568.      GRAPHICA draws a tic at each axis value (major tic) and other tic marks
  569.  in between (minor tics).
  570.  
  571.      The 'divisions' command determines the number of major and minor tic
  572.  marks.  These two numbers must be integers.  Major and minor tic marks are
  573.  one less than the total number of divisions for a particular axis.  For
  574.  example, if the x-axis range is 0 to 25, a good selection for major divisions
  575.  would be 5.  The major tic marks will appear at 5, 10, 15, and 20.  5 could
  576.  be chosen as the number of minor divisions.  This results in four minor tic
  577.  marks between two major ones.  The defaults are 5,2.
  578.  
  579.  Example:
  580.  
  581.      graphica> divisions x 5,2 y 5,2.
  582. \draw
  583.  Syntax:
  584.  
  585.      draw {x} {y} {y2} {x2} {mask} {reflect}
  586.  
  587.  Description:
  588.  
  589.      Draws the specified axis with the given range, tic size and number of
  590.  divisions.  The key words 'x,x2,y,y2' may be followed by two optional key
  591.  words, 'mask' and/or 'reflect'.  If 'mask' is specified, that axis is drawn
  592.  with the major and minor tic marks but with no numbers or label.  If the
  593.  'reflect' option is used, a mirror image of that axis is drawn.
  594.  
  595.  Example:
  596.  
  597.      graphica> draw x reflect y reflect.
  598.  
  599.  draws the x and y axes with opposite mirror images.
  600.  
  601.  Note:  You may draw more than one axis of the same kind by suitably changing
  602.  the subplot area.
  603. \dummy
  604. \show dummy
  605.  Syntax:
  606.  
  607.      dummy <dummy-var>
  608.      show dummy
  609.  
  610.  Description:
  611.  
  612.      By default, GRAPHICA assumes that the independent variable for the
  613.  'plot' command line is 'x'.  'x' is called the dummy variable because it is
  614.  just a notation to indicate the independent variable.  The 'dummy' command
  615.  changes this default dummy variable name.  For example, you may find it more
  616.  convenient to call the dummy variable 't' when plotting time functions.
  617.  
  618.  Examples:
  619.  
  620.      graphica> dummy t
  621.      graphica> dummy s
  622. \dump
  623.  Syntax:
  624.  
  625.      dump {device-type} {'filename'}
  626.  
  627.  Description:
  628.  
  629.      Generates hardcopy output into a file.  The available device types are:
  630.  
  631.           epson, qms, hpgl, pic, postscript
  632.  
  633.      If the filename is omitted, GRAPHICA will use a default filename of the
  634.  form 'graphica.xxx' where .xxx is one of:
  635.  
  636.           .prn, .qms, .hpg, .pic, .ps
  637.  
  638.  depending on the chosen device type.  If the device type is missing and you
  639.  have defined the environment variable GRAPDUMP, then this device will be
  640.  used.  A device type specified on the command line overrides any device type
  641.  previously specified in GRAPDUMP.  You will get an error message if GRAPHICA
  642.  can't find a device type somewhere (either in the environment or on the
  643.  command line.)
  644.  
  645.  Examples:
  646.  
  647.      graphica> dump hpgl 'plotter.dat'
  648.  
  649.  generates a file called plotter.dat containing HPGL commands.  You may send
  650.  this file directly to an HP plotter or import it into another program which
  651.  accepts HPGL commands, such as WordPerfect, Ventura Publisher, etc.
  652.  
  653.      graphica> dump hpgl
  654.  
  655.  does the same thing except it dumps the output to 'graphica.hpg'.
  656.  
  657.      graphica> dump 'plotter.dat' hpgl
  658.  
  659.  same effect as the first example.
  660.  
  661.      graphica> dump
  662.  
  663.  In this case, if GRAPDUMP=post, a postscript file will be generated, but you
  664.  will get an error message otherwise.
  665.  
  666.  On DOS systems,
  667.  
  668.      graphica> dump epson
  669.  
  670.  generates a binary file called 'graphica.prn' which you may send to an
  671.  Epson-compatible printer (after you're out of GRAPHICA or by 'shelling' out
  672.  to DOS) by typing:
  673.  
  674.      C:\>copy/b graphica.prn lpt1:
  675.  
  676.      The resolution of this plot is 512 x 384 pixels on a 9-pin dot-matrix
  677.  printer.
  678.  
  679.  Also see ENVIRONMENT.
  680. \echo
  681. \noecho
  682.  Syntax:
  683.  
  684.      echo
  685.      noecho
  686.  
  687.  Description:
  688.  
  689.      The 'echo' command causes all input typed at the terminal or picked up
  690.  from a load file to be displayed at the terminal.  This is useful with a load
  691.  file because progress can be monitored.  The default is 'noecho.'
  692.  
  693.  Examples:
  694.  
  695.      graphica> echo
  696.  
  697.  switches echoing on
  698.  
  699.      graphica> noecho
  700.  
  701.  switches echoing off.
  702. \quit
  703. \exit
  704.  Syntax:
  705.  
  706.      exit
  707.      quit
  708.  
  709.  Description:
  710.  
  711.      The commands 'exit' and 'quit' will terminate GRAPHICA.  These commands
  712.  will clear the output device (as the clear command does) before exiting.  If
  713.  this command is used in a script file, program execution halts immediately.
  714.  Do not use this command until you really want to exit the program.
  715.  
  716.  Example:
  717.  
  718.      graphica> exit
  719.  
  720.  and you will be back at the command line prompt.
  721. \exponent
  722. \noexponent
  723. \show exponent
  724.  Syntax:
  725.  
  726.      exponent
  727.      noexponent
  728.      show exponent
  729.  
  730.  Description:
  731.  
  732.      Use this option to select either a fixed or exponential format for
  733.  logarithmic axis tic mark labels.
  734.  
  735.      Exponential format is displayed as the number 10 with an exponent.  For
  736.  example, the value 0.001 will be displayed as 10 to the power -3 on a log
  737.  axis with exponential format.
  738.  
  739.  Example:
  740.  
  741.      graphica> exponent
  742.  
  743.  Also see FORMAT.
  744. \format
  745. \show format
  746.  Syntax:
  747.  
  748.      format {x} {y} {y2} {x2} <integer>
  749.      format {x} {y} {y2} {x2} ({"<label>"} <pos> {, {"<label>"} <pos>}...)
  750.      format {log} n
  751.      format {long} {short}
  752.      show format
  753.  
  754.  Description:
  755.  
  756.      The main 'format' command controls the format of numbers plotted next to
  757.  the major tic marks.  The parameter in angle brackets indicates the number of
  758.  digits drawn after the decimal point.  A -1 or 0 causes the numbers to be
  759.  displayed in integer format.  The default value for the number of digits to
  760.  the right of the decimal point for all axes is 2.
  761.  
  762.      The ("<label>" <pos>, ...) format allows non-numeric tic labels.  Each set
  763.  of tics can have an optional label.  The label is a string enclosed by quotes,
  764.  such as "hello".  The label may even be empty.  You have to include the ( and
  765.  ) for the non-numeric tic labels to work.  Of course, the corresponding axis
  766.  will have to be mapped properly for user-defined labels to work.  That is, if
  767.  you map the y axis from -10 to -5 and specify "format y ("one" 1, "two" 2),
  768.  you'll get labels like "-10", etc. instead of "one", "two", etc.
  769.  
  770.      For logarithmic axes, 'format log' controls how often major and minor tic
  771.  marks should be labeled.  Enter a frequency of:
  772.  
  773.     n = 1     to label all minor tics and all major tics
  774.     n = 2     to label even minor tics and all major tics
  775.     n = 3     to label minor tics 2 and 5, and all major tics
  776.     n = 4     to label minor tic 3, and all major tics
  777.     n = 5     to label only major tics.
  778.  
  779.  The result of any GRAPHICA assignment statement is displayed on the screen.
  780.  The numeric display format can be controlled using the 'format' command.  The
  781.  default format, called the 'short' format, shows approximately 5 significant
  782.  decimal digits.  For the 'long' format (approx. 15 digits) the last
  783.  significant digit may appear to be incorrect but the output is actually an
  784.  accurate representation of the binary number stored in the computer.
  785.  
  786.  Examples:
  787.  
  788.      graphica> format x 2 y 3
  789.  
  790.  In this example, the x-axis labels will be printed with 2 decimal points and
  791.  the y-axis labels with 3.
  792.  
  793.      graphica> format x ("Jan" 1, "Feb" 2, "Mar" 3)
  794.      graphica> format y ("bottom" 0, "" 10, "top" 20)
  795.  
  796.  Here, we're using the user-defined axis labels.  "Jan" will be printed instead
  797.  of a "1", "Feb" instead of 2, and "Mar" instead of 3.  In the second example,
  798.  the label "bottom" will appear at the "0" position, and "top" will appear at
  799.  the "20" position.
  800.  
  801.      graphica> format log 2
  802.  
  803.  in this case, the even minor tic marks will be labeled (2,4,6,8) for each log
  804.  cycle.
  805.  
  806.      graphica> a = 4./3.
  807.      graphica> format short
  808.      graphica> print a
  809.  
  810.      a = 1.33333
  811.  
  812.      graphica> format long
  813.      graphica> print a
  814.  
  815.      a = 1.333333333333333
  816.  
  817.  Also see EXPONENT.
  818. \frame
  819. \noframe
  820.  Syntax:
  821.  
  822.      frame
  823.      noframe
  824.  
  825.  Description:
  826.  
  827.      This command draws a frame around the subplot area.  'noframe' cancels
  828.  this effect.
  829.  
  830.  Example:
  831.  
  832.      graphica> frame
  833.  
  834.  produces a frame around the subplot area.
  835. \grid
  836. \nogrid
  837.  Syntax:
  838.  
  839.      grid {pen {style} <integer>} {color {type} <integer>}
  840.      nogrid
  841.  
  842.  Description:
  843.  
  844.      You may specify whether or not to put a set of horizontal and vertical
  845.  reference lines on a plot at the same points as the axis tic marks.  The grid
  846.  may make it easier to read values off and may improve plot appearance.
  847.  
  848.      The 'grid' command sets an internal flag that signals the axis drawing
  849.  routine to generate a grid.  'nogrid' cancels this effect for subsequent axis
  850.  draws.  The 'pen' and 'color' keywords may be specified to change the
  851.  appearance of the grid.  The defaults are: nogrid, pen = current pen style +
  852.  2, color = current pen color.
  853.  
  854.  Examples:
  855.  
  856.      graphica> grid
  857.      graphica> draw x
  858.  
  859.      graphica> grid pen 2 color 3
  860. \help
  861.  Syntax:
  862.  
  863.      help <topic>
  864.  
  865.  Description:
  866.  
  867.      If <topic> is not specified, a short message is printed about GRAPHICA.
  868.  After help for the requested topic is given, help for a subtopic may be
  869.  requested by typing its name, extending the help request.  After that
  870.  subtopic has been printed, you may extend the request again, as before, or go
  871.  back one level to the previous topic, by simply pressing return without
  872.  typing anything.  Eventually, you will return to the GRAPHICA command line.
  873.  
  874.  Examples:
  875.  
  876.      graphica> help subplot
  877.      graphica> help ?
  878. \labels
  879. \nolabels
  880. \show labels
  881. \show titles
  882.  Syntax:
  883.  
  884.      label {top} {bottom} {right} {left} "label text"
  885.      label {tag} "label_text" {at (x,y)} {justification} {angle}
  886.      label {origin} <integer>
  887.      nolabel {tag}
  888.      show labels
  889.  
  890.  Description:
  891.  
  892.      By default, the text is placed flush left against point x,y.  If you
  893.  want to adjust the way the label is positioned with respect to the point x,y,
  894.  add the parameter <justification>, which may be 'start', 'stop' or 'center'.
  895.  This indicates that the point is to be at the left, right or center of the
  896.  text.  The <justification> may be abbreviated.
  897.  
  898.      The top label lies above the plot frame line.  The bottom label is drawn
  899.  below the frame.  'start', 'center' and 'stop' cause the program to halt for
  900.  pen positioning if a label position was not specified.  The start label is
  901.  drawn left-justified.  The center label is centered around (x,y) and the stop
  902.  label is right-justified.  The top and bottom labels are centered and each
  903.  subsequent label goes either above or below the previously drawn label.  The
  904.  label will be drawn at an 'angle'from the horizontal.
  905.  
  906.      'tag' is an integer that is used to identify the label.  If no tag is
  907.  given, the lowest unused tag value is assigned automatically.  The tag can be
  908.  used to delete or change a specific label.  To change any attribute of an
  909.  existing label, use the label command with the appropriate tag, and specify
  910.  the parts of the label to be changed.
  911.  
  912.      The 'xlabel' command is equivalent to the label bottom command (and so
  913.  are the 'x2label', 'ylabel' and 'y2label' commands equivalent to the label
  914.  top, left and right commands.)
  915.  
  916.  Examples:
  917.  
  918.  to set a label at (1,2) to "y=x" use:
  919.  
  920.      graphica> label "y=x" at 1,2
  921.  
  922.  to set a label "y=x^2" with the right of the text at (2,3), and
  923.  tag the label number 3, use:
  924.  
  925.      graphica> label 3 "y=x\U2" at 2,3 stop
  926.  
  927.  to change the preceding label to center justification, use:
  928.  
  929.      graphica> label 3 center
  930.  
  931.  to delete label number 2 use:
  932.  
  933.      graphica> nolabel 2
  934.  
  935.  to delete all labels use:
  936.  
  937.      graphica> nolabel
  938. \legends
  939. \show legends
  940.  Syntax:
  941.  
  942.      legend {framed} {offset <value>} {left} {center}
  943.             {right} {flat} {stacked} {at <x>,<y>}
  944.  
  945.               'legend string'
  946.               {pen {style} {width} <integer>}
  947.               {length {value}}
  948.               {symbol {integer}/{name}}
  949.               {{pen} color {integer}/{name}}
  950.  
  951.      end
  952.      show legends
  953.  
  954.  Description:
  955.  
  956.      This command places a legend at a digitized location.  This location is
  957.  x/y default units away from the lower left hand corner of the current page
  958.  size.  If a line pattern is specified a small segment of the line is drawn
  959.  before the text.  If a symbol is specified, that symbol is drawn before the
  960.  text.  'pen', 'length', 'symbol' and 'color' can be specified in any order.
  961.  
  962.      The 'legend' command processes information until the word 'end' is
  963.  encountered.  'left', 'center' and 'right' are keywords to place the whole
  964.  legend (lines, symbols and text) at that relative given position.
  965.  
  966.      'offset' specifies the separation between lines in a given legend in
  967.  multiples of the current character size.  The default is 2.5 times the
  968.  character size.
  969.  
  970.      'length' specifies the length of the line drawn, if one has been asked
  971.  for with the 'pen' keyword.  It is in default paper units (inches).
  972.  
  973.      'framed' places a frame around the legend.  This frame is also a
  974.  masked area.  So if you draw a legend first, then anything drawn "over" the
  975.  legend will effectively be masked out.  You can only have one "masked" area
  976.  (see MASK).
  977.  
  978.      'flat' is a keyword used to draw all the legend information in one
  979.  line.  The default mode of operation is stacked.
  980.  
  981.  Examples:
  982.  
  983.      graphica> legend framed at 2.0 3.0
  984.      graphica> 'This is one line with a symbol' symbol square
  985.      graphica> color 3 'This second line is in another color'
  986.      graphica> pen 4 length 1.0 'one inch line'
  987.      graphica> end
  988.  
  989.      graphica> legend center at 5.0,4.0
  990.      graphica> symb 1 'experimental data set 1'
  991.      graphica> symb 2 'experimental data set 2'
  992.      graphica> pen 3 'simulation results'
  993.      graphica> end
  994.  
  995.      graphica> legend center at 5.0,4.0 flat framed
  996.      graphica> pen 1 'data 1'
  997.      graphica> pen 2 'data 2'
  998.      graphica> end
  999.  
  1000.  This last example draws all the legend information on one line as compared
  1001.  to the other two examples above which draw stacked legends.  See the
  1002.  example script files 'legend.plt' and 'flat.plt'.
  1003.  
  1004. \lines
  1005. \nolines
  1006. \show lines
  1007.  Syntax:
  1008.  
  1009.      line {tag} {from sx,sy} {to ex,ey}
  1010.      noline {tag}
  1011.      show lines
  1012.  
  1013.  Description:
  1014.  
  1015.      This command is used to make more complicated diagrams by specifying each
  1016.  line to be drawn.  The linked list so created may be corrected and modified
  1017.  by specifying new coordinates or 'noline'.
  1018.  
  1019.      Use 'show lines' to check all lines previously specified.
  1020.  
  1021.  Examples:
  1022.  
  1023.      graphica> line from 3.0,4.0 to 6.0,8.0
  1024.      graphica> line 2 to 3.0,5.0
  1025.  
  1026. this last command modifies line number 2 to end at (3,5).
  1027. \load
  1028. \input
  1029.  Syntax:
  1030.  
  1031.      load <filename>
  1032.      input <filename>
  1033.  
  1034.  Description:
  1035.  
  1036.      The 'load' command executes each command line of the specified input
  1037.  file as if they had been typed in interactively.  Files created by the
  1038.  'audit' command can later be loaded.  Any text file containing valid commands
  1039.  can be created and then executed by the 'load' command.  Files being loaded
  1040.  may themselves contain 'load' commands.  The 'load' command must be the last
  1041.  command on the line.  The name of the input file must be enclosed in single
  1042.  or double quotes if there are any non-character elements in the name, e.g.
  1043.  file.dat has a dot in it so you must enclose it in quotes.
  1044.  
  1045.  Examples:
  1046.  
  1047.      graphica> load 'work.plt'
  1048.      graphica> load "function.dat"
  1049.      graphica> input 'my.plt'
  1050.      graphica> input plot
  1051.  
  1052.      The 'load' command is performed implicitly on any file names given as
  1053.  arguments to GRAPHICA.  These are loaded in the order specified, and then
  1054.  GRAPHICA exits.  For example,
  1055.  
  1056.      C:\graphica myown.plt
  1057.  
  1058.  will load GRAPHICA, execute the script file myown.plt and after a key is
  1059.  pressed, exit to DOS.  Notice how quotes are not needed to specify data files
  1060.  at the command line level.  You may specify more than one file,
  1061.  
  1062.      C:\graphica first.plt second.plt
  1063. \location
  1064.  Syntax:
  1065.  
  1066.      location {default} {mapped}
  1067.  
  1068.  Description:
  1069.  
  1070.      This command allows giving mapped x/y positions in commands like
  1071.  'legend', 'label', 'line', and 'arrow.'
  1072.  
  1073.  Examples:
  1074.  
  1075.      graphica> location mapped
  1076.  
  1077.  turns a flag on so that are x/y location are interpreted as being in mapped
  1078.  units.
  1079.  
  1080.      graphica> location default
  1081.  
  1082.  turns the flag off so that are x/y location are interpreted as being in user
  1083.  default units (inches, for example, which is the default.)
  1084.  
  1085. \map
  1086. \nomap
  1087. \show map
  1088.  Syntax:
  1089.  
  1090.      map {x} {y} {y2} {x2} <min> <max>
  1091.      nomap
  1092.      show map
  1093.  
  1094.  Description:
  1095.  
  1096.      The command 'map' defines the ranges of the data for the generation of
  1097.  axes.  These values determine the numbers that appear along the axes.  The x
  1098.  range specifies a range for the bottom x-axis, the x2 range for the top
  1099.  x-axis, the y range is for the left y-axis and the y2 range for the right
  1100.  y-axis.  If this command is not specified the subplot area is mapped
  1101.  automatically from the minimum and maximum (x/y) data values entered with the
  1102.  data command.  (This latter procedure will only map the x/y axes, not the
  1103.  x2/y2 axes.)
  1104.  
  1105.      Mapping can be turned off with the command 'nomap'.
  1106.     'show map' shows the currently mapped axes.
  1107.  
  1108.  Examples:
  1109.  
  1110.      graphica> map x 0,10 y 0.0,100.0
  1111.      graphica> map y2 25,-10 x 100,200
  1112. \mask
  1113. \show mask
  1114.  Syntax:
  1115.  
  1116.      mask {area} {on} {off} {<x1>,<y1>,<x2>,<y2>}
  1117.      nomask
  1118.  
  1119.  Description:
  1120.  
  1121.      The 'mask' command defines a masking area.  Nothing is drawn over the
  1122.  masked area if it is currently active.  The 'legend' command for example,
  1123.  creates a mask over the specified legend block and no points or lines are
  1124.  drawn over it.  Use 'nomask' to turn masking off or 'mask on'/'mask off'
  1125.  to toggle the mask status.
  1126.  
  1127.  Examples:
  1128.  
  1129.      graphica> mask 2,3 5,8
  1130.      graphica> nomask
  1131.      graphica> mask on
  1132.      graphica> mask off
  1133.  
  1134. \memory
  1135.  Syntax:
  1136.  
  1137.      memory
  1138.  
  1139.  Description:
  1140.  
  1141.      The 'memory' command gives the number of bytes left in system RAM (only
  1142.  in the DOS version of GRAPHICA).
  1143.  
  1144.  Example:
  1145.  
  1146.      graphica> mem
  1147.  
  1148.  would give you the following message:
  1149.  
  1150.      System RAM available:   378,588 bytes.
  1151.  
  1152. \origin
  1153. \noorigin
  1154. \show origin
  1155.  Syntax:
  1156.  
  1157.      origin {x} {y} {axis} <other coordinate value>
  1158.      noorigin
  1159.      show origin
  1160.  
  1161.  Description:
  1162.  
  1163.      The normal plot style is to have the data plotted in a box.  It is
  1164.  possible to cause either the x or y-axis, or both, to be drawn in such a way
  1165.  that they cross at an arbitrary value.  Unless told otherwise, GRAPHICA will
  1166.  always draw the axes with their origin values at the physical origin (left
  1167.  bottom side of the graph).
  1168.  
  1169.      The origin command specifies the axis origin in user defined coordinates.
  1170.      'show origin' shows the axis origins.
  1171.  
  1172.  Examples:
  1173.  
  1174.      graphica> origin x 0 y 0
  1175.      graphica> norigin
  1176. \output
  1177. \show output
  1178.  Syntax:
  1179.  
  1180.      output {<filename>} {stdout} {com}
  1181.      show output
  1182.  
  1183.  Description:
  1184.  
  1185.      By default, plots are displayed to the standard output (stdout).  The
  1186.  'output' command redirects the display to the specified file or device.  The
  1187.  filename must be enclosed in quotes.  If the filename is omitted, output will
  1188.  be sent to the standard output.  'show output' shows where output is going.
  1189.  
  1190.  If you're sending output to the communications port (DOS version), make sure
  1191.  you have configured your serial port with the 'mode' command.  For example,
  1192.  
  1193.      mode com1:96,n,8,1,p
  1194.  
  1195.  configures a serial port for use at 9600-baud, with no parity checking,
  1196.  8 bits per character, one stop bit, and with retries.  Graphica can only use
  1197.  the 'com1:' port for output.
  1198.  
  1199.  Example:
  1200.  
  1201.      graphica> output 'output.dat'
  1202.  
  1203.  sends output to the file 'output.dat'.
  1204.  
  1205.      graphica> output com
  1206.  
  1207.  sends output to comm port 1 (com1:).
  1208. \paper
  1209. \noborder
  1210. \show paper
  1211.  Syntax:
  1212.  
  1213.      paper {size} <dx> {by} <dy> {default}
  1214.      noborder
  1215.      show paper
  1216.  
  1217.  Description:
  1218.  
  1219.      The most basic elements of a plot are the paper (or page) and the
  1220.  subplot area.  The paper size usually coincides with the graphics device
  1221.  hardclip limits, that is, no plotting can be done outside this region.
  1222.  
  1223.      The paper command defines the size of the paper.  GRAPHICA sets the page
  1224.  limits to the standard 11.0 by 8.5 inch paper size.  If a raster graphics
  1225.  terminal is being used the page border is also drawn so that the relative
  1226.  size of the plot can be ascer- tained.  This page border may be turned off by
  1227.  using the command 'noborder'.
  1228.  
  1229.      When paper default is specified, the paper size will be reset to its
  1230.  default value and the page border will be drawn once again.
  1231.  
  1232.      The paper command is also used to indicate that a new plot is going to
  1233.  be generated.  'show paper' shows the current paper dimensions.
  1234.  
  1235.  Examples:
  1236.  
  1237.      graphica> paper default
  1238.      graphica> paper 8.5 by 11
  1239.      graphica> pap size 11 8.5
  1240. \parametric
  1241.  Syntax:
  1242.  
  1243.      parametric {plot} t tmin,tmax fx(t),fy(t)
  1244.                 {connect {points}} {add {symbols}}
  1245.  
  1246.  where
  1247.      t     = any dummy variable
  1248.      tmin  = minimum value of the dummy variable
  1249.      tmax  = maximum value of the dummy variable
  1250.      fx(t) = x coordinate of each point in the curve
  1251.      fy(t) = y coordinate of each point in the curve
  1252.  
  1253.  Description:
  1254.  
  1255.      The plot command allows plotting curves in GRAPHICA in which you give
  1256.  the y coordinate of each point as a function of the x coordinate.  You can
  1257.  also use GRAPHICA to make parametric plots.  In a parametric plot, you give
  1258.  both the x and y coordinates of each point as a function of a third
  1259.  parameter, say t.  It takes two parametric function specifications in terms
  1260.  of the paramet- ric dummy argument to describe a single graph.  The order the
  1261.  parametric functions is xfunction, yfunction.  Each function operates over
  1262.  the common parametric domain.
  1263.  
  1264.  Examples:
  1265.  
  1266.      graphica> parametric plot t 0,2*pi sin(t) sin(2*t)
  1267.      graphica> parametric t 0,2*pi sin(t) cos(t)
  1268.      graphica> parametric plot x 1,4 log(x) log(x**2+x**6)
  1269.  
  1270.      graphica> r(t) = (3*cos(t)**2-1)/2
  1271.      graphica> parametric plot t 0 2*pi r(t)*cos(t) r(t)*sin(t)
  1272. \pause
  1273.  Syntax:
  1274.  
  1275.      pause {<expression>} {"string"}
  1276.  
  1277.  Description:
  1278.  
  1279.      Halts execution until a user responds at the keyboard.  'pause' is
  1280.  useful in conjunction with 'load' files.  It displays any text associated
  1281.  with the command and then waits the specified amount of time.  This allows
  1282.  one to build a load file and control the amount of time a finished graph is
  1283.  displayed.  The first argument can be a negative or a positive integer.
  1284.  Choosing -1 will have GRAPHICA wait until any key is hit.  A positive integer
  1285.  will have GRAPHICA wait for the specified number of seconds.
  1286.  
  1287.      The expression and string are optional.  If a string is present it must
  1288.  be enclosed in quotes.  If no expression is given, 'pause' waits a default
  1289.  time of 3 seconds.
  1290.  
  1291.  Examples:
  1292.  
  1293.      graphica> pause     # Wait a default three seconds
  1294.      graphica> pause 3   # Wait three seconds
  1295.      graphica> pause 10  "Isn't this great?  It's a cubic spline."
  1296.      graphica> pause -1  # Wait until a carriage return is hit
  1297.      graphica> pause -1  "Hit return to continue"
  1298. \pen
  1299. \color
  1300. \pen speed
  1301. \pen color
  1302. \pen width
  1303. \pen style
  1304.  Syntax:
  1305.  
  1306.      pen {style} {speed} {width} <value>
  1307.      pen {color} <integer>/{name}
  1308.      show pen
  1309.  
  1310.  Description:
  1311.  
  1312.      With the 'pen' command, several parameters may be specified, as follows:
  1313.  
  1314.      To distinguish between the lines of a multiline plot, 'style' defines
  1315.  the type of the line pattern to use when connecting data points or drawing
  1316.  lines.  The default is 1 (a solid line).  All drawing commands are affected
  1317.  by the pen style command.  In other words, the line type remains in effect
  1318.  until changed.  Issue a new pen style command whenever you wish to respecify
  1319.  the line pattern.  There are 8 (eight) pen styles available, with 1 being a
  1320.  solid line.
  1321.  
  1322.      'width' defines the pen width in pixels or points.  This feature is only
  1323.  available in devices with variable pen thickness capability.  There are 8
  1324.  (eight) pen widths available, with 1 being a line 1 pixel thick.  This is the
  1325.  default.
  1326.  
  1327.      'speed' defines the pen speed in a pen plotter in cm/sec.  The speed
  1328.  defaults to the output device's default.  (On an HP7475 plotter, this is 30
  1329.  cm/sec.)
  1330.  
  1331.      'color' defines the pen color by color code or name.  Colors are
  1332.  assigned to numbers that in turn correspond to the pen numbers on a plotter.
  1333.  There are currently 16 colors defined for the EGA/VGA color monitor:
  1334.  
  1335.           0 - black                    8 - gray
  1336.           1 - blue                     9 - lblue
  1337.           2 - green                   10 - lgreen
  1338.           3 - cyan                    11 - lcyan
  1339.           4 - red                     12 - lred
  1340.           5 - magenta                 13 - lmagenta
  1341.           6 - brown                   14 - yellow
  1342.           7 - lgray                   15 - white
  1343.  
  1344.  Examples:
  1345.  
  1346.      graphica> pen style 1, color 3
  1347.      graphica> pen width 3
  1348.      graphica> pen speed 15 (cm/s)
  1349. \show pen
  1350. \show color
  1351.  This command shows the current drawing specifications.
  1352. \plot
  1353. \noplot
  1354. \nodata
  1355. \errorbars
  1356. \connect
  1357. \add
  1358. \needle
  1359. \step
  1360. \autox
  1361.  Syntax:
  1362.  
  1363.      plot 'data-file' {autox} {data} 'definition' <function>
  1364.               {connect {points}} {add {symbols}} {needle} {step}
  1365.               {errorbars {itype}}
  1366.      noplot
  1367.      show plots
  1368.  
  1369.  Definition:
  1370.  
  1371.      This command generates plots and is the primary GRAPHICA command.  It
  1372.  allows you to plot data, functions and data files.
  1373.  
  1374.      <function> is a mathematical expression, 'data-file' the name of a data
  1375.  file enclosed in quotes.  If data is specified, previously read-in data is
  1376.  plotted.  The filename may be followed by the 'autox' keyword as in the data
  1377.  command.  In that case, the x values are assigned automatically starting from
  1378.  data point number 1.
  1379.  
  1380.      'connect' causes the points to be connected by a straight line of the
  1381.  specified default line pattern.
  1382.  
  1383.      For plots with more than one line of data, it may be difficult to tell
  1384.  the difference between the lines.  For this reason, GRAPHICA includes the
  1385.  capability of marking each point in a line with a symbol.  'add' causes the
  1386.  specified symbol to be displayed at each data point.  Leaving out the word
  1387.  'add' just draws a line through the data points.
  1388.  
  1389.      'needle' makes the plot come out such that the y data values are plotted
  1390.  as needles perpendicular to the x axis.
  1391.  
  1392.      'step' makes a step plot, useful, for example, for plotting production
  1393.  data versus years.
  1394.  
  1395.      The 'errorbars' keyword lets you add error bars to the plotted data
  1396.  points.  An optional integer specifies the type, 1 = no tics, 2 = tics at
  1397.  end of bar.  Error bar values are read in one of two ways:  (1) from
  1398.  columns 3 and 4 of a data file (these two extra values are read in as ylow
  1399.  and yhigh values for the y values in column 2) or (2) from column 3 (this
  1400.  value is a delta y).  If you're using the 'autox' keyword you need one
  1401.  column less than specified above since the x values will be assigned
  1402.  automatically.  Two types of error bars may be drawn:  type 1 is simply a
  1403.  vertical line spanning the error;  type 2 has to tic marks parallel to the
  1404.  x-axis, the size of the symbol, like a bracket.  The default is type 2.
  1405.  
  1406.      For axes specified as logarithmic, the log of the data values is
  1407.  plotted.  The log of absolute values is plotted.  For zero or negative data
  1408.  values, the log of 0.001 is plotted.
  1409.  
  1410.      Optionally, a definition may be given on this line as well.
  1411.  
  1412.      'noplot' or 'nodata' clears all data points from memory and leaves
  1413.  GRAPHICA as if no data points or functions had been entered.
  1414.  
  1415.      'show plots' shows the currently defined plots, including data, functions,
  1416.  smoothed curves, polynomial fits and shaded data.
  1417.  
  1418.  Examples:
  1419.  
  1420.      graphica> plot sin(x)
  1421.      graphica> plot 'exp.dat'
  1422.      graphica> plot 'bar.dat' errorbars 1
  1423.      graphica> plot 'one-y.dat' autox add
  1424.      graphica> plot data
  1425.      graphica> plot cos(x) add symbols connect points
  1426.      graphica> plot s=0.1, t(x)
  1427.      graphica> noplot
  1428.  
  1429.  where t(x) has been defined previously and is a function of s.
  1430.  
  1431.      graphica> show plots
  1432.  
  1433.  Also see SYMBOL.
  1434. \show plots
  1435.     'show plots' shows the currently defined plots, including data, functions,
  1436.  smoothed curves, polynomial fits and shaded data.
  1437. \plotting
  1438.  Syntax:
  1439.  
  1440.      plotting sequence <start>,<stop> {{by} <increment>}
  1441.  
  1442.  Description:
  1443.  
  1444.      In case you want the program to plot the data other than in the normal
  1445.  fashion (start with the first point and plot all points up to the last one),
  1446.  use this command to alter the program's processing loop.  Given as integers,
  1447.  <start> indicates the first data point to start at, <stop> is the last data
  1448.  point to plot and <increment> controls which points to pick up within the
  1449.  start-stop range.  The default is to plot all points in increments of 1.
  1450.  
  1451.  Example:
  1452.  
  1453.      graphica> plotting sequence 2,10,2
  1454.  
  1455.  plots points 2, 4, 6, 8 and 10.
  1456. \show plotting
  1457.  Shows the current plotting sequence.
  1458. \polyfit
  1459.  Syntax:
  1460.  
  1461.      polyfit {{degree} n} {range {min} {max}>
  1462.  
  1463.  Description:
  1464.  
  1465.      The 'polyfit' command generates an nth degree polynomial least squares
  1466.  fit of the current data.  The highest degree possible is 10.
  1467.  
  1468.      Optionally, the range of the given x values may be given and GRAPHICA
  1469.  will plot the least squares fit from min to max only.
  1470.  
  1471.  Examples:
  1472.  
  1473.      graphica> polyfit degree 2
  1474.      graphica> polyfit range 20 30
  1475. \show fit
  1476.  Shows the current polynomial fitting and correlation coefficients.
  1477. \print
  1478.  Syntax:
  1479.  
  1480.      print <expression>
  1481.      <expression>
  1482.  
  1483.  Description:
  1484.  
  1485.      The print command prints the value of <expression> to the screen.  You
  1486.  can also determine the value of expressions or variables by just typing the
  1487.  expression or variable in at the graphica> prompt.
  1488.  
  1489.  Examples:
  1490.  
  1491.      graphica> print 2*3
  1492.  
  1493.  would print out 6.
  1494.  
  1495.      graphica> 30+2*2
  1496.  
  1497.  would print out 34.
  1498.  
  1499.  Also see EXPRESSIONS.
  1500. \pwd
  1501.  Syntax:
  1502.  
  1503.      pwd
  1504.  
  1505.  Description:
  1506.  
  1507.      The pwd command prints the name of the working directory to the screen.
  1508.  
  1509.  Example:
  1510.  
  1511.      graphica> pwd
  1512.  
  1513.  would print out C:\WORK, for example, on DOS systems.
  1514. \recall
  1515. \editing
  1516.  Syntax:
  1517.  
  1518.      recall
  1519.  
  1520.  Description:
  1521.  
  1522.       On some systems, GRAPHICA is compiled with a feature called last-line
  1523.  editing and recall.  In that case, the arrow keys on the keypad can be used
  1524.  to edit mistyped commands or to recall previous command lines.  The DOS
  1525.  version of GRAPHICA does have this feature.
  1526.  
  1527.      Instead of retyping an entire line, simply hit the up-arrow or down-
  1528.  arrow keys to recall previous input lines.  Then you can move the cursor
  1529.  over using the left and right-arrow keys and edit the line.  The arrow keys
  1530.  on the keypad work on copies of the previous input lines, which have been
  1531.  saved in a moderately sized input buffer.  Here is a brief description of
  1532.  their function:
  1533.  
  1534.      ^N  or  up arrow          recall previous line
  1535.      ^P  or  down arrow        recall next line
  1536.      ^B  or  left arrow        move left one character
  1537.      ^F  or  right arrow       move right one character
  1538.      ^A  or  home              move to beginning of line
  1539.      ^E  or  end               move to tend of line
  1540.              esc               cancel current line
  1541.      ^H  or  del               delete character at cursor
  1542.              backspace         delete character left of cursor
  1543.  
  1544.      ^K      kills from current position to the end of line
  1545.      ^D      deletes the current character, or EOF if line is empty
  1546.      ^L/^R   redraw line in case it gets trashed
  1547.      ^U      kills the entire line
  1548.      ^W      kills last word
  1549.  
  1550.      RETURN returns the entire line regardless of the cursor position.
  1551.  
  1552.      On systems without the last-line editing and recall feature, the
  1553.  'recall' command gives a list of the last 10 user input lines for review.
  1554.  
  1555.  Example:
  1556.  
  1557.      graphica> recall
  1558.  
  1559.  would give out a list such as:
  1560.  
  1561.      paper size 11 by 8.5
  1562.      subplot 2 3 6 7
  1563.      frame
  1564.      draw x y
  1565. \rectangle
  1566. \show rectangles
  1567.  Syntax:
  1568.  
  1569.      rectangle {from <x1>,<y1>} {to <x2>,<y2>}
  1570.      show rectangles
  1571.  
  1572.  Description:
  1573.  
  1574.      This command generates a rectangle with its lower left hand corner at
  1575.  <x1>,<y1> and its upper right hand corner at <x2>,<y2>.
  1576.  
  1577.  Example:
  1578.  
  1579.      graphica> rectangle from 1.0,2.0 to 3.0,4.0
  1580. \revisions
  1581.  Revision History
  1582.  ----------------
  1583.  3 Feb 93 - Changed to version 2.2 and uploaded it to CompuServe.
  1584.  
  1585.  2 Feb 93 - Finally got around fixing the legend routines.  The legend
  1586.  lines weren't quite aligned when center- or right-justified.  Added a
  1587.  new keyword 'flat' to draw non-stacked legends lotus 1-2-3 style.  Check
  1588.  out the 'legend.plt' and flat.plt' scripts file to see how it works.
  1589.  
  1590.  31 Jan 93 - Added the error and complementary error functions to the
  1591.  set of user-callable functions.  See 'help erf' and 'help erfc'.
  1592.  
  1593.  30 Jan 93 - Wrote a "getch" function for COHERENT so you can press any
  1594.  key to continue rather than having to press return.  Check out the new
  1595.  help system.
  1596.  
  1597.  29 Jan 93 - New feature: you can now have several curves in a data file
  1598.  by separating the data by blank lines.  See help on FILE and the
  1599.  'world.plt' example script file.
  1600.  
  1601.  28 Jan 93 - Changed the default color to green.
  1602.  
  1603.  22 Jan 93 - Fixed BIG BUGS when error bar and probability plotting.
  1604.  
  1605.  21 Jan 93 - Fixed a tiny little bug with the memory allocation code
  1606.  of the RECALL function in the DOS version.
  1607.  
  1608.  20 Jan 93 - Changed version to 2.1.
  1609.  
  1610.  20 Jan 93 - Changed code in the COHERENT and DOS versions to read in only
  1611.  help keywords when requesting HELP.  The help text is read in from the
  1612.  help file as needed.  The new scheme reduces the memory requirements on
  1613.  PCs.  Now you can load in bigger script files!
  1614.  
  1615.  14 Jan 93 - Ported GRAPHICA to a Sun 4 workstation (no graphics yet).
  1616.  Cleaned up the code a little bit, especially dealing with include files.
  1617.  Should be easier to port to many platforms now.
  1618.  
  1619.  3 Jan 93 - Changed the mouse routines in the DOS version to use a
  1620.  software cursor (faster than using getimage/putimage).
  1621.  
  1622.  2 Jan 93 - Added code to save text screen before going into graphics in
  1623.  the DOS version.  This way when you get back to text mode, previous text
  1624.  will still be visible.
  1625.  
  1626.  23 Dec 92 - Added the capability of sending output to com1 in the DOS
  1627.  version.  If you have a plotter connected to that communications port, for
  1628.  example, you can send hpgl output directly to the plotter (without having
  1629.  to DUMP to a file and then use COPY FILE COM1: at the DOS prompt.)
  1630.  
  1631.  23 Dec 92 - Fixed a little buglet when changing terminal types and output
  1632.  was sent to (stdout).  SHOW OUTPUT shows correct output now.
  1633.  
  1634.  14 Dec 92 - Added further functionality to the 'format' command by
  1635.  allowing user-defined tic labels.  See FORMAT.
  1636.  
  1637.  14 Dec 92 - Added the 'square-root' type to the family of axis types.
  1638.  
  1639.  8 Dec 92 - Fixed a bug in the help command.  You can abort help by
  1640.  pressing q/Q/ESC.  With the bug, the next help command was invalid.
  1641.  
  1642.  24 Nov 92 - Added two fonts to the Coherent version, simplex script and
  1643.  complex script.  Also added the font name to SHOW FONT on all versions.
  1644.  (I'm getting a "DGROUP exceeds 64K" when adding these fonts to the DOS
  1645.  version.  I need to get a compiler without the 64K limit on DGROUP data.)
  1646.  
  1647.  17 Nov 92 - Fixed a bug with the probability scale.  It wasn't drawing
  1648.  the numeric labels in the right place when plotting an x2 or y2 axis.
  1649.  
  1650.  12 Nov 92 - Fixed bugs in the 'mask' command.  Circles and rectangles are
  1651.  now being masked correctly.
  1652.  
  1653.  9 Nov 92 - Released version 2.0 to Simtel.
  1654.  5 Oct 92 - Uploaded version 2.0 to CompuServe.
  1655.  
  1656.  4 Oct 92 - Fixed a bug in the parsing routine-you can now enter numbers
  1657.  preceded by a plus as well as a minus.  However, if you enter two numbers,
  1658.  the second of which is negative, without a comma in between, you'll get an
  1659.  error.
  1660.  
  1661.  4 Oct 92 -  Fixed another bug in the 'paper' command: if a negative
  1662.  number is entered, its absolute value is taken.
  1663.  
  1664.  3 Oct 92 - Added the catalan constant to the built-in constants.  Also
  1665.  added another constant called 'degree' so that you may use trigonometric
  1666.  functions with angles in degrees, e.g.  sin( 20 * degree ).  See WHO.
  1667.  
  1668.  19 Sept 92 - Fixed a quirk with the page border:  when in non-interactive
  1669.  mode (command line script files), GRAPHICA won't change the line specs on
  1670.  the display to indicate the current line specs (style, width, color).
  1671.  
  1672.  4 Sept 92 - Finished porting GRAPHICA to Mark William Company's Coherent
  1673.  v4.0.  Active devices are HPGL and PostScript.
  1674.  
  1675.  21 Aug 92 - Added 'format long' and 'format short' commands to control
  1676.  the format of numerical results displayed on the screen.  Placed old
  1677.  'logformat' command into 'format' (see FORMAT).
  1678.  
  1679.  18 Aug 92 - Shortened long color names, e.g. lblue instead of lightblue.
  1680.  See PEN or COLOR.
  1681.  
  1682.  17 Aug 92 - Added the 'subscript' and 'superscript' commands but not
  1683.  active yet (still working on the algorithm).  See SUB/SUPERSCRIPT.
  1684.  
  1685.  16 Aug 92 - Further improvements in the memory management scheme.  Almost
  1686.  all the linked lists are now of one object type.  Fixed a bug in the axis
  1687.  drawing scheme (was drawing axes twice and it took a long time to show the
  1688.  cross-hair).
  1689.  
  1690.  15 Aug 92 - Merged together a bunch of "objects" (arrows, circles,
  1691.  labels, legends, lines, rectangles) into linked lists of the same kind.
  1692.  
  1693.  14 Aug 92 - No mouse cursor (cross-hair) appears when showing graphs
  1694.  in batch (not interactively).
  1695.  
  1696.  10 Aug 92 - Changed all text space allocation to dynamic memory
  1697.  allocation.  Saves a few bytes here and there, especially on the DOS
  1698.  version.
  1699.  
  1700.  9 Aug 92 - Added the 'who' command which works just like 'show variables'.
  1701.  
  1702.  8 Aug 92 - 'nopaper' has been changed to 'noborder' for clarity.
  1703.  
  1704.  26 Jul 92 - Added the 'memory' command that gives you a (comma separated)
  1705.  number of free bytes left in RAM.  See MEMORY.
  1706.  
  1707.  25 Jul 92 - Fixed memory allocation problem in data structures.  Wasn't
  1708.  clearing all memory allocated to data points.  All memory is now freed
  1709.  when using the 'clear' command or quitting the program.
  1710.  
  1711.  24 Jul 92 - Fixed postscript bug, couldn't get 2 consecutive plots out
  1712.  in the same session.  The second page bombed.  Works OK now.
  1713.  
  1714.  24 Jul 92 - Can now enter directories or filenames without quotes after
  1715.  commands like 'dir', 'del', 'cd', 'type'.  GRAPHICA won't bulk at reading
  1716.  something like cd c:\work without quotes.  See CD.
  1717.  
  1718.  23 Jul 92 - Implemented 'dir', 'del', and 'type' commands.  There is no
  1719.  need to shell out to the operating system to do file maintenance.  You can
  1720.  still use $ to tell GRAPHICA you're using an operating system command.
  1721.  Useful to edit files, for example.  See DIR, DEL and TYPE.
  1722.  
  1723.  22 Jul 92 - Instead of getting an 'invalid command error' GRAPHICA now
  1724.  tries to search for variables or expressions.  There is no further need to
  1725.  type 'print expression' to evaluate an expression or a variable.  You can
  1726.  now type in any variable or expression at the GRAPHICA command line.  You
  1727.  can still use the 'print' command as usual.
  1728.  
  1729.  21 Jul 92 - Corrected problem with the GRAPDUMP environmental variable.
  1730.  Actually rewrote the algorithm to check for 'dump' devices.  Whether a
  1731.  device can be used as a 'dump' device or not is now built in in a device
  1732.  table.  You'll get an error message when attempting to use an invalid
  1733.  device for 'dumping'.
  1734.  
  1735.  20 Jul 92 - Implemented 'title' command.  Works just like 'label top' but
  1736.  writes directly above frame without leaving a space for eventual 'x2' axis
  1737.  labels.  See TITLE.
  1738.  
  1739.  19 Jul 92 - Added last-line editing and recall on DOS systems.  Very
  1740.  useful to avoid typing in an entire line because you made a little
  1741.  mistake.  See EDITING or RECALL.
  1742. \show range
  1743. \range
  1744.  This command shows the input data range (max and min) of each column, if any.
  1745. \sampling
  1746. \samples
  1747. \show sampling
  1748. \show samples
  1749.  Syntax:
  1750.  
  1751.      sampling <expression>
  1752.      show sampling
  1753.  
  1754.  Description:
  1755.  
  1756.      The sampling rate of functions may be changed by the 'SAMPLING' command.
  1757.  By default, sampling is set to 150 points.  A higher sampling rate will
  1758.  produce more accurate plots, but will also take longer.
  1759.  
  1760.      'show sampling' shows the current sampling rate.
  1761.  
  1762.  Example:
  1763.  
  1764.      graphica> sampling 200
  1765. \shade
  1766.  Syntax:
  1767.  
  1768.      shade {spacing} {angle} <value> {mode} <integer>
  1769.            {closure/noclosure}
  1770.  
  1771.  Description:
  1772.  
  1773.      The 'shade' command allows the user to shade a specified polygon.
  1774.  'spacing' is the vertical distance between shade lines in default user units.
  1775.  
  1776.      Optionally, a shade 'angle' may be specified.  This angle is measured
  1777.  from the horizontal.  The sign convention for the direction of rotation is as
  1778.  follows:
  1779.  
  1780.               + clockwise
  1781.               - counterclockwise
  1782.  
  1783.      'mode' indicates the following:
  1784.  
  1785.               mode = 1 - shade and outline (this is the default)
  1786.               mode = 2 - shade polygon only
  1787.               mode = 3 - outline polygon only
  1788.  
  1789.      The 'closure/noclosure' keyword is used to specify whether GRAPHICA
  1790.  should draw a line making the polygon a closed one or not.  This keyword
  1791.  is only active when mode is 1 or 3.  The default is 'noclosure'.
  1792.  
  1793.  Example:
  1794.  
  1795.      graphica> shade angle 35.0 mode 1
  1796. \shell
  1797.  Syntax:
  1798.  
  1799.      shell
  1800.  
  1801.  Description:
  1802.  
  1803.      The shell command spawns an interactive shell.  Use this option to
  1804.  access the operating system prompt and execute commands or run other
  1805.  programs.  When shelling out to the operating system, you can execute any
  1806.  command or application.   To return to GRAPHICA, type exit at the command
  1807.  line.
  1808.  
  1809.      A single shell command may be spawned by preceding it with the $ character
  1810.  at the beginning of a command line.  Control will return immediately to
  1811.  GRAPHICA after this command is executed.
  1812.  
  1813.  Examples:
  1814.  
  1815.      graphica> shell
  1816.  
  1817.  spawns a shell to the operating system.  Type exit to return to GRAPHICA.
  1818.  
  1819.      graphica> $dir
  1820.  
  1821.  prints a directory listing and then returns to GRAPHICA.
  1822. \show
  1823.  Syntax:
  1824.  
  1825.      show <parameter>
  1826.  
  1827.  Description:
  1828.  
  1829.      The 'show' command lists parameter settings.  'show' without a parameter
  1830.  simply redraws existing plots on your screen.  'show version' displays:
  1831.  
  1832.           - your GRAPHICA version number
  1833.           - pertinent copyright and other information
  1834.  
  1835.  and on DOS systems:
  1836.  
  1837.           - the amount of system RAM available
  1838.           - the amount of disk space available
  1839. \spline
  1840.  Syntax:
  1841.  
  1842.      spline {plot} {tension {value}} {range {min} {max}}
  1843.  
  1844.  Description:
  1845.  
  1846.      A cubic spline interpolator will produce a smooth curve through x/y data
  1847.  pairs, even if their variation is quite complicated.
  1848.  
  1849.      The spline command is used to interpolate the current data using splines
  1850.  under tension.  The produced data curve is a spline under tension, which is
  1851.  somewhat "tighter" than a cubic spline, and less likely to have spurious
  1852.  inflection points.
  1853.  
  1854.      The tension factor indicates the curviness desired for the line produced
  1855.  by the cubic spline.  A tension in the interpolating curve of 50 gives almost
  1856.  a polygonal line;  a tension of .01 gives almost a cubic spline.  The default
  1857.  of 2.0 will produce a smooth curve in most cases.  For very erratic data it
  1858.  may be necessary to tighten up the tension factor to 5 or 6 to adequately
  1859.  follow the data points.
  1860.  
  1861.      Optionally, the range of the given x values may be given and GRAPHICA
  1862.  will interpolate from min to max only.
  1863.  
  1864.  Examples:
  1865.  
  1866.      graphica> spline plot tension 10
  1867.      graphica> spline range 20 30
  1868. \subplot
  1869. \show subplot
  1870.  Syntax:
  1871.  
  1872.      subplot {size/area} <xleft> <ybottom> <xright> <ytop>
  1873.              {default}
  1874.      show subplot
  1875.  
  1876.  Description:
  1877.  
  1878.      The subplot area is also referred to as soft clip.  The actual graph
  1879.  resides in the subplot area but other graphic elements can be drawn outside
  1880.  the subplot area.
  1881.  
  1882.      The 'subplot' command defines the region on the paper where the plot is
  1883.  drawn.  By default, the subplot area is set to a rectangle of about 60% of
  1884.  the paper size.  The (xleft,ybottom) pair sets the coordinates of the left
  1885.  bottom corner of the subplot area, while the (xright, ytop) pair sets the
  1886.  coordinates of the top right hand corner of the plotting region.  If subplot
  1887.  default is specified, the subplot area size will be reset to its default size.
  1888.  
  1889.      Data points and curves are drawn or plotted on a grid space formed by
  1890.  Cartesian coordinate axes.  The horizontal line is the x-axis and the vertical
  1891.  line is the y-axis.  These axes are within the subplot area or plotting
  1892.  region.
  1893.  
  1894.      'show subplot' shows the current subplot area.
  1895.  
  1896.  Example:
  1897.  
  1898.      graphica> subplot area 2.0,2.0 9.0,7.0
  1899. \subscript
  1900.  Syntax:
  1901.  
  1902.      subscript {size} <value>
  1903.  
  1904.  Description:
  1905.  
  1906.      This command sets the subscript size in default units.  The default value
  1907.  is 0.15 inches.
  1908.  
  1909.  Example:
  1910.  
  1911.      graphica> subscript size 0.15
  1912.  
  1913.  Also see CHARACTER FONT, CHARACTER GAP, CHARACTER RATIO, CHARACTER SIZE,
  1914.  CHARACTER SLANT, SUBSCRIPT, SUPERSCRIPT and TEXT.
  1915. \superscript
  1916.  Syntax:
  1917.  
  1918.      superscript {size} <value>
  1919.  
  1920.  Description:
  1921.  
  1922.      This command sets the superscript size in default units.  The default
  1923.  value is 0.15 inches.
  1924.  
  1925.  Example:
  1926.  
  1927.      graphica> superscript size 0.15
  1928.  
  1929.  Also see CHARACTER FONT, CHARACTER GAP, CHARACTER RATIO, CHARACTER SIZE,
  1930.  CHARACTER SLANT, SUBSCRIPT, SUPERSCRIPT and TEXT.
  1931. \symbol
  1932. \show symbol
  1933.  Syntax:
  1934.  
  1935.      symbol <code>/<name> size <value>
  1936.      show symbol
  1937.  
  1938.  Description:
  1939.  
  1940.      Defines the symbol to use in displaying data points.  Mnemonic codes
  1941.  may be used to specify a symbol.  You have a choice of 10 standard graphics
  1942.  symbols:
  1943.  
  1944.            1 - square
  1945.            2 - circle
  1946.            3 - triangle
  1947.            4 - diamond
  1948.            5 - itriangle (inverted triangle)
  1949.            6 - hourglass
  1950.            7 - plus
  1951.            8 - cross
  1952.            9 - star
  1953.           10 - pdiamond (plus within a diamond)
  1954.  
  1955.      The default is a square (symbol 1 or symbol square).  The symbol size is
  1956.  specified as the height of the current symbol in default units.
  1957.  
  1958.      'show symbol' shows the current symbol type and size.
  1959.  
  1960.  Example:
  1961.  
  1962.      graphica> symbol square size 0.2
  1963. \terminal
  1964. \show terminal
  1965.  Syntax:
  1966.  
  1967.      terminal {<terminal-type>}
  1968.      show terminal
  1969.  
  1970.  Description:
  1971.  
  1972.      GRAPHICA supports many different graphics devices.  Use this command to
  1973.  select the type of device for which GRAPHICA will produce output.
  1974.  
  1975.      If <terminal-type> is omitted, GRAPHICA will list the available terminal
  1976.  types.  The <terminal-type> may be abbreviated.
  1977.  
  1978.      Use 'output' to redirect this output to a file or device.
  1979.  
  1980.      'show terminal' shows the currently defined output terminal.
  1981.  
  1982.  Examples:
  1983.  
  1984.      graphica> terminal hpgl
  1985.      graphica> terminal
  1986.  
  1987.  would print out the following:
  1988.  
  1989.  available terminal types:
  1990.             unknown  Unknown terminal type - not a plotting device
  1991.                 bgi  IBM PC/Clone with a Hercules/CGA/EGA/VGA graphics card
  1992.               epson  Epson LX-800, Star NL-10, NX-1000, etc
  1993.                hpgl  HPGL Graphics Language and HP7475 plotter
  1994.                 pic  PIC Graphics Language
  1995.          postscript  Postscript Graphics Language
  1996.  
  1997.  and possibly (depending on the version you have) any of the following:
  1998.  
  1999.              apollo  HP Apollo Domain Workstation - direct mode
  2000.            kercolor  Kermit-MS color tek40xx terminal emulator
  2001.             kermono  Kermit-MS monochrome tek40xx terminal emulator
  2002.                 qms  QMS Laser Printer
  2003.              raster  Raster Technologies Model One terminal
  2004.             tek40xx  Tektronix 4010 and most TEK emulators
  2005. \tics
  2006. \show tics
  2007.  Syntax:
  2008.  
  2009.      tic {size} <major value> <minor value> {<direction>}
  2010.      show tics
  2011.  
  2012.  Description:
  2013.  
  2014.      All axes are marked off in equal segments with tic marks.  The values
  2015.  major and minor determine the size of the major and minor tic marks.  The
  2016.  defaults are 0.16 and 0.09 inches for the major and minor tic marks,
  2017.  respectively.
  2018.  
  2019.      By default, tics are drawn inwards from the border on all four sides.
  2020.  The 'tic' command can be used to change the tics to be drawn outwards.
  2021.  <direction> may be in, out or nothing (which is the same as in).
  2022.  
  2023.      'show tics' shows the current tic size and direction.
  2024.  
  2025.  Example:
  2026.  
  2027.      graphica> tic size 0.1 0.06
  2028.      graphica> tics in
  2029.      graphica> show tics
  2030. \type
  2031. \more
  2032.  Syntax:
  2033.  
  2034.      type <file>
  2035.      more <file>
  2036.  
  2037.  Description:
  2038.  
  2039.      The 'type' command displays the contents of a file.  Pathnames, wildcards,
  2040.  and drive designators may be used in the usual way for your operating system.
  2041.  Other operating system commands can be issued using the $ character followed
  2042.  by a command.  'more' works on the Apollo and Coherent versions.
  2043.  
  2044.  Examples:
  2045.  
  2046.      graphica> type script.plt
  2047.  
  2048.  lists the ASCII file script.plt.
  2049.  
  2050.      graphica> type foo
  2051.  
  2052.  lists the ASCII file foo.
  2053. \units
  2054. \show units
  2055.  Syntax:
  2056.  
  2057.      units <unit type>
  2058.      show units
  2059.  
  2060.  Description:
  2061.  
  2062.      It is sometimes desirable to use units other than inches, i.e., the
  2063.  metric system, with GRAPHICA.  To change the unit of measure for parameters
  2064.  which are usually given in inches use the unit command.  This command defines
  2065.  the units to be used in subsequent commands which represent a length or
  2066.  position normally supplied in inches, such as in paper size, subplot area,
  2067.  etc.
  2068.  
  2069.      The <unit type> may be 'in', 'cm' or 'mm'.
  2070.  
  2071.      'show units' shows the current units of measure.
  2072.  
  2073.  Example:
  2074.  
  2075.      graphica> units cm
  2076. \view
  2077.  Syntax:
  2078.  
  2079.      view
  2080.  
  2081.  Description:
  2082.  
  2083.      Retracts the pen and advances the paper on a pen plotter to view the
  2084.  graph fully.  This command is similar to pushing the VIEW button on an HP7475
  2085.  plotter.
  2086.  
  2087.  Example:
  2088.  
  2089.      graphica> view
  2090.  
  2091.  would move the plotting paper outward into view.
  2092. \x
  2093. \y
  2094. \x2
  2095. \y2
  2096. \logarithmic
  2097. \probability
  2098. \linear
  2099. \sqr
  2100.  Syntax:
  2101.  
  2102.      {x} {y} {y2} {x2} {linear/logarithmic/probability/sqr}
  2103.  
  2104.  Description:
  2105.  
  2106.      With this command, the kind of axis to be plotted may be specified, as
  2107.  follows:
  2108.  
  2109.      linear - specifies a linear axis.  A linear scale is a standard base 10
  2110.  numeric scale.  This is the default.
  2111.  
  2112.      logarithmic - specifies a log axis.  A log scale is a base 10
  2113.  logarithmic scale.  If a regression has been performed, the values for that
  2114.  particular axis are logarithmic.  Given the mapped range for an axis, the
  2115.  logarithmic range for that axis will be determined automatically.  If an
  2116.  axis is to be logarithmic, there is no need to specify the number of
  2117.  divisions or the format.  If the range is negative as specified in a map
  2118.  command, GRAPHICA automatically converts it to positive.  Zero values for
  2119.  min or max will cause the log axis to begin at 0.001.
  2120.  
  2121.      probability - a probability scale is the inverse of the Gaussian
  2122.  cumulative distribution function.  Thus the graph of the sigmoidally shaped
  2123.  Gaussian cumulative distribution function on a probability scale will be a
  2124.  straight line.
  2125.  
  2126.      Probabilities are expressed as a percentage so that the range of the
  2127.  scale is from 0 to 100.  The minimum and maximum values that a probability
  2128.  axis can take in GRAPHICA are 0.01 and 99.99.  A probability axis label could
  2129.  be specified as something like "cumulative frequency, %".
  2130.  
  2131.      sqr - square-root axis.  Used in some engineering applications. A square
  2132.  root scale is based on the square root of the axis in question.
  2133.  
  2134.  Examples:
  2135.  
  2136.      graphica> x lin
  2137.      graphica> y log
  2138.      graphica> x2 pro
  2139.      graphica> x sqr
  2140. \xlabel
  2141. \ylabel
  2142. \x2label
  2143. \y2label
  2144.  Syntax:
  2145.  
  2146.      {xlabel} {x2label} {ylabel} {y2label} 'string'
  2147.  
  2148.  Description:
  2149.  
  2150.      This command draws a centered label for that axis.  The label text must
  2151.  be enclosed in single or double quotes.  All labels are drawn using the
  2152.  current character font and size.  The label bottom command is equivalent to
  2153.  the xlabel command (and so are the 'label top', 'left', and 'right' commands
  2154.  equivalent to the 'x2label', 'ylabel' and 'y2label' commands.)
  2155.  
  2156.  Example:
  2157.  
  2158.      graphica> xlabel 'This is the x-axis label'.
  2159.      graphica> ylabel 'This is the y-axis label'.
  2160. \expressions
  2161.      In general, any mathematical expression accepted by C, FORTRAN, Pascal,
  2162.  or BASIC is valid.  The precedence of these operators is determined by the
  2163.  specifications of the C programming language.  White space (spaces and tabs)
  2164.  is ignored inside expressions.
  2165.  
  2166.      Complex constants may be expressed as {<real>,<imag>}, where <real> and
  2167.  <imag> must be numerical constants.  For example, {3,2} represents 3 + 2i;
  2168.  {0,1} represents 'i' itself.  The curly braces are explicitly required here.
  2169. \expressions functions
  2170. \functions
  2171.      All functions in GRAPHICA accept integer, real, and complex arguments,
  2172.  unless otherwise noted.
  2173. \expressions functions abs
  2174. \functions abs
  2175. \abs
  2176.      abs(z) returns the absolute value of the real or complex number z.  The
  2177.  returned value is of the same type as the argument.  For complex arguments,
  2178.  abs(z) is defined as the length of z in the complex plane [i.e.,
  2179.  sqrt(real(z)**2 + imag(z)**2) ].
  2180. \expressions functions acos
  2181. \functions acos
  2182. \acos
  2183.      acos(z) returns the arc cosine (inverse cosine) of z.  All results are
  2184.  given in radians.
  2185. \expressions functions arg
  2186. \functions arg
  2187. \arg
  2188.      arg(z) returns the phase angle of a complex number z, in radians.  The
  2189.  result is always between -π and π.
  2190. \expressions functions asin
  2191. \functions asin
  2192. \asin
  2193.      asin(z) returns the arc sine (inverse sine) of z.  All results are given
  2194.  in radians.
  2195. \expressions functions atan
  2196. \functions atan
  2197. \atan
  2198.      atan(z) returns the arc tangent (inverse tangent) of z.  All results are
  2199.  given in radians.
  2200. \expressions functions besj0
  2201. \functions besj0
  2202. \besj0
  2203.      besj0(z) returns the j0th Bessel function of z.  besj0 expects z to be
  2204.  in radians.
  2205.  
  2206.  Also see BESSEL.
  2207. \expressions functions besj1
  2208. \functions besj1
  2209. \besj1
  2210.      besj1(z) returns the j1st Bessel function of z.  besj1 expects z to be
  2211.  in radians.
  2212.  
  2213.  Also see BESSEL.
  2214. \expressions functions besy0
  2215. \functions besy0
  2216. \besy0
  2217.      besy0(z) returns the y0th Bessel function of z.  besy0 expects z to be
  2218.  in radians.
  2219.  
  2220.  Also see BESSEL.
  2221. \expressions functions besy1
  2222. \functions besy1
  2223. \besy1
  2224.      besy1(z) returns the y1st Bessel function of z.  besy1 expects z to be
  2225.  in radians.
  2226.  
  2227.  Also see BESSEL.
  2228. \expressions functions ceil
  2229. \functions ceil
  2230. \ceil
  2231.      ceil(z) returns the smallest integer greater than z.  For complex
  2232.  numbers, ceil returns the smallest integer greater than the real part of z.
  2233. \expressions functions cos
  2234. \functions cos
  2235. \cos
  2236.      cos(z) returns the cosine of z.  cos expects z to be in radians.
  2237. \expressions functions cosh
  2238. \functions cosh
  2239. \cosh
  2240.      cosh(z) returns the hyperbolic cosine of z.  cosh expects z to be in
  2241.  radians.
  2242. \expressions functions exp
  2243. \functions exp
  2244. \exp
  2245.      exp(z) returns the exponential function of z (e raised to the power of
  2246.  z).
  2247. \expressions functions erf
  2248. \functions erf
  2249. \erf
  2250.      erf(z) returns the error function of z.  erf(z) is the integral of the
  2251.  Gaussian distribution.  The error function is central to many calculations
  2252.  in statistics.
  2253. \expressions functions erfc
  2254. \functions erfc
  2255. \erfc
  2256.      erfc(z) returns the complementary error function of z.  erfc(z) is
  2257.  simply 1.0 - erf(z), where erf(z) is the integral of the Gaussian
  2258.  distribution.
  2259. \expressions functions floor
  2260. \functions floor
  2261. \floor
  2262.      floor(z) returns the greatest integer less than or equal to z.  For
  2263.  complex numbers, floor returns the largest integer not greater than the real
  2264.  part of z.
  2265. \expressions functions imag
  2266. \functions imag
  2267. \imag
  2268.      imag(z) returns the imaginary part of z as a real number.
  2269. \expressions functions int
  2270. \functions int
  2271. \int
  2272.      int(z) returns the integer part of z, truncated toward zero.
  2273. \expressions functions ln
  2274. \functions ln
  2275. \ln
  2276.      ln(z) returns the natural logarithm (base e) of z.
  2277. \expressions functions log
  2278. \functions log
  2279. \log
  2280.      log(z) returns the logarithm (base 10) of z.
  2281. \expressions functions real
  2282. \functions real
  2283. \real
  2284.      real(z) returns the real part of z.
  2285. \expressions functions sgn
  2286. \functions sgn
  2287. \sgn
  2288.      sgn(z) returns 1 if z is positive, -1 if z is negative, and 0 if z is 0.
  2289.  If z is a complex value, the imaginary component is ignored.
  2290. \expressions functions sin
  2291. \functions sin
  2292. \sin
  2293.      sin(z) returns the sine of z.  sin expects z to be in radians.
  2294. \expressions functions sinh
  2295. \functions sinh
  2296. \sinh
  2297.      sinh(z) returns the hyperbolic sine of z.  sinh expects z to
  2298.  be in radians.
  2299. \expressions functions sqrt
  2300. \functions sqrt
  2301. \sqrt
  2302.      sqrt(z) returns the square root of z.
  2303. \expressions functions tan
  2304. \functions tan
  2305. \tan
  2306.      tan(z) returns the tangent of z.  tan expects z to be in radians.
  2307. \expressions functions tanh
  2308. \functions tanh
  2309. \tanh
  2310.      tanh(z) returns the hyperbolic tangent of z.  tanh expects
  2311.  z to be in radians.
  2312. \expressions operators
  2313. \operators
  2314.      All operators in GRAPHICA accept integer, real, and complex arguments,
  2315.  unless otherwise noted.  The ** operator (exponentiation) is supported, as in
  2316.  FORTRAN.
  2317.  
  2318.      Parentheses may be used to change order of evaluation.
  2319. \expressions operators binary
  2320. \operators binary
  2321. \binary
  2322.  The following is a list of all the binary operators and their usage:
  2323.  
  2324.          symbol             example              explanation
  2325.  
  2326.           **                 a**b                 exponentiation
  2327.           *                  a*b                  multiplication
  2328.           /                  a/b                  division
  2329.           %                  a%b                * modulo
  2330.           +                  a+b                  addition
  2331.           -                  a-b                  subtraction
  2332.           ==                 a==b                 equality
  2333.           !=                 a!=b                 inequality
  2334.           &                  a&b                * bitwise AND
  2335.           ^                  a^b                * bitwise exclusive OR
  2336.           |                  a|b                * bitwise inclusive OR
  2337.           &&                 a&&b               * logical AND
  2338.           ||                 a||b               * logical OR
  2339.  
  2340.           (*) Operator requires integer arguments.
  2341.  
  2342.      Logical AND (&&) and OR (||) short-circuit the way they do in C.  That
  2343.  is, the second && operand is not evaluated if the first is false;  the second
  2344.  || operand is not evaluated if the first is true.
  2345.  
  2346.      Multiplication must be explicitly noted with the asterisk; adjacent
  2347.  parenthetical terms such as (a+b)(c-4) are not automatically multiplied.
  2348. \expressions operators ternary
  2349. \operators ternary
  2350. \ternary
  2351.  The following is a list of the ternary operator and its usage:
  2352.  
  2353.           symbol             example              explanation
  2354.  
  2355.            \:                 a\b:c              * ternary operation
  2356.  
  2357.           (*) Operator requires an integer argument.
  2358.  
  2359.      The ternary operator evaluates its first argument (a).  If it is true
  2360.  (non-zero) the second argument (b) is evaluated and returned, otherwise the
  2361.  third argument (c) is evaluated and returned.
  2362. \expressions operators unary
  2363. \operators unary
  2364. \unary
  2365.      The following is a list of all the unary operators and their usage:
  2366.  
  2367.           symbol             example              explanation
  2368.  
  2369.            -                  -a                   unary minus
  2370.            ~                  ~a                 * one's complement
  2371.            !                  !a                 * logical negation
  2372.            !                  a!                 * factorial
  2373.  
  2374.           (*) Operator requires an integer argument.
  2375.  
  2376.      The factorial operator returns a real number to allow a greater range.
  2377. \bessel
  2378.      Bessel functions arise in solving differential equations for systems
  2379.  with cylindrical symmetry.  Jn(z) is often called the Bessel function of
  2380.  the first kind, or simply the Bessel function.  Yn(z) is referred to as
  2381.  the Bessel function of the second kind, the Weber function, or the Newmann
  2382.  function (denoted Nn(z)).
  2383.  
  2384.      Four Bessel functions are provided with GRAPHICA: besj0, besj1, besy0
  2385.  and besy1.  besj0(z) returns the j0th Bessel function of z, besj1(z)
  2386.  returns the j1st Bessel function of z, besy0(z) returns the y0th Bessel
  2387.  function of z and besy1(z) returns the y1st Bessel function of z.  All
  2388.  Bessel functions expect z to be in radians.
  2389.  
  2390.  Also see BESJ0, BESJ1, BESY0, BESY1.
  2391. \environment
  2392.      An environment variable is used to specify from the operating system
  2393.  certain parameters of program operation.  The "environment" is really just
  2394.  a common area of memory that programs can write to and read from.  Some
  2395.  programs are geared to look specifically at the environment to find
  2396.  particular data important to their operation.  They may ask you to place a
  2397.  variable into the environment equal to a certain value so that they can
  2398.  find support files which could not be found otherwise.
  2399.  
  2400.      A number of shell environment variables are understood by GRAPHICA.
  2401.  None of these are required, but may be useful:
  2402.  
  2403.               - GRAPTERM
  2404.               - GRAPDUMP
  2405.               - GRAPHELP
  2406.               - GRAPHICA
  2407.  
  2408.      If GRAPTERM is defined, it is used as the name of the terminal type
  2409.  to be used.  This overrides any terminal type sensed by GRAPHICA on start
  2410.  up, but is itself overridden by the GRAPHICA.INI (or equivalent) start-up
  2411.  file, and of course by later explicit changes.  GRAPDUMP is used as the
  2412.  default terminal type used when dumping graphics to a file.
  2413.  
  2414.      GRAPHELP may be defined to be the pathname of the help file.
  2415.  GRAPHICA is used as the name of a directory to search for a GRAPHICA.INI
  2416.  file if none is found in the current directory.  COMSPEC is used for the
  2417.  SHELL command on DOS systems.
  2418.  
  2419.  DOS Environment Variables
  2420.  -------------------------
  2421.  
  2422.      If we were to look at the DOS environment (by typing the SET command
  2423.  at the DOS prompt), we might see a listing similar to the one below:
  2424.  
  2425.               COMSPEC=C:\COMMAND.COM
  2426.               PATH=C:\;C:\DOS;C:\UTIL
  2427.  
  2428.      Other values might be present, like PROMPT=$P$G, and more depending
  2429.  on the types and kinds of software you are running.
  2430.  
  2431.      Environment variables are specified before running GRAPHICA.  They
  2432.  can be specified directly from DOS, from within the AUTOEXEC.BAT file, or
  2433.  from within any batch file.
  2434.  
  2435.      The command for setting an environment variable is:
  2436.  
  2437.               SET PARAMETER=PARAMETER VALUE
  2438.  
  2439.  Examples:
  2440.  
  2441.      C:\SET GRAPDUMP=hpgl               (sets the dump terminal type)
  2442.      C:\SET GRAPHELP=C:\plot\graphica.hlp             (the help file)
  2443.      C:\SET GRAPHICA=C:\plot              (location of the .INI file)
  2444.  
  2445.  In general, you won't have to set the DOS environment variable GRAPTERM if
  2446.  you have any of the commonly available graphics monitors, CGA/EGA/VGA, etc.
  2447.  
  2448.  VAX/VMS Logical Symbols
  2449.  -----------------------
  2450.  
  2451.      On a VAX, environment variables are called 'symbols.'  The format for
  2452.  defining a symbolic name for a character string is:
  2453.  
  2454.               symbol-name :== expression
  2455.  
  2456.  For example, we could define the following symbols:
  2457.  
  2458.      $ LIST :== "DIRECTORY"
  2459.      $ TIME :== "SHOW TIME"
  2460.      $ QP :== "SHOW QUEUE/DEVICE"
  2461.      $ SS :== "SHOW SYMBOL"
  2462.  
  2463.      To looking at the environment, you may type SHOW SYMBOL/GLOBAL/ALL at the
  2464.  $ prompt).
  2465.  
  2466.  Examples:
  2467.  
  2468.      $ GRAPDUMP :== hpgl                       (sets the dump terminal type)
  2469.      $ GRAPTERM :== raster                          (sets the terminal type)
  2470.      $ GRAPHICA :== dua7:[user.junk]graph.ini    (location of the .INI file)
  2471.  
  2472.  (GRAPHELP has already been defined for you.)
  2473.  
  2474.  Unix Shell Variables
  2475.  --------------------
  2476.  
  2477.      In a UNIX environment, things get a little bit confusing because of
  2478.  the different shells that you might be running.  Environment variables can
  2479.  be shown by using the 'printenv' command (Korn-shell or /bin/sh), the
  2480.  'setenv' command (c-shell or /bin/csh) or the 'AEGIS' command (Aegis
  2481.  shell on Apollos).  To set them, do
  2482.  
  2483.      $ GRAPTERM=apollo
  2484.      $ GRAPDUMP=postscript
  2485.      $ export GRAPDUMP
  2486.      $ export GRAPTERM
  2487.  
  2488.  Also see STARTUP.
  2489. \startup
  2490.      When GRAPHICA is run, it looks for an initialization file to load.
  2491.  This file is called GRAPHICA.INI.  If this file is not found in the
  2492.  current directory, the program will look for it in a directory pointed to
  2493.  by the environment variable GRAPHICA.
  2494.  
  2495.      If the initialization file is found, GRAPHICA executes the commands
  2496.  in that file.  This is most useful for setting your terminal type and
  2497.  defining any functions or variables which you use often.
  2498.  
  2499.  Also see ENVIRONMENT.
  2500. \text
  2501.      Text primitives generate a string of characters on a display device
  2502.  in a specific location in the world coordinate system.  The character
  2503.  string may comprise letters, numerals, and symbols.  Text primitives
  2504.  provide a method for labeling and clarifying a graphical image.
  2505.  
  2506.      This section describes the control sequences which are accessible
  2507.  when specifying a string label.  The control sequences are only available
  2508.  when using a software generated font.  GRAPHICA recognizes \ as a special
  2509.  character used to signal the start of an escape sequence.  There are two
  2510.  kinds of escape sequences, those that take an argument and those that do
  2511.  not.
  2512.  
  2513.      The two escape sequences that do not take an argument are:
  2514.  
  2515.      \U     move up half a character size
  2516.      \D     move down half a character size
  2517.  
  2518.      The following take one integer argument immediately after the escape
  2519.  sequence and a space after it to delineate the end (the space is not printed):
  2520.  
  2521.      \Cn    set color to n
  2522.      \C-1   reset color to the default
  2523.      \Fn    set font to n
  2524.      \F-1   reset font to the default
  2525.      \Sn    set character size to n % of the default size
  2526.      \S-1   reset character size to the default size
  2527.      \Ln    set character slant to n degrees
  2528.      \L-1   reset character slant to the default slant
  2529.      \An    print ascii n
  2530.      \rn    save current position in register n
  2531.      \Rn    restore position from register n
  2532.  
  2533.  Examples:
  2534.  
  2535.  to print greek characters such as in 'beta = x + lambda':
  2536.  
  2537.      label '\F2 b\F1 = x + \F2 l'
  2538.  
  2539.  to label the x-axis with 'velocity U sub f':
  2540.  
  2541.      xlabel 'velocity, U\Dsub'
  2542.  
  2543.  to place a top label of 'stress in dynes per cm squared':
  2544.  
  2545.      top label 'stress (dyn\cm\U2\D)'
  2546.  
  2547.  to get 'x squared plus y squared':
  2548.  
  2549.      label 'x\U2\D + y\U2'
  2550.  
  2551.  and finally, an advanced example.  To get 'A sub b sup beta':
  2552.  
  2553.      label 'A\r1 \Db\R1 \U\F2 b'
  2554.  
  2555.  This last example is translated as: do A, save this spot, go down half,
  2556.  do b, restore the saved spot, go up half, switch to font 2 (greek simplex),
  2557.  do beta.  Notice the use of registers to stack characters on top of each
  2558.  other.
  2559.  
  2560.      To get a backslash, you'll have to use \\.
  2561. \show version
  2562. \version
  2563.      The 'show version' or 'version' command displays:
  2564.  
  2565.           - your GRAPHICA version number
  2566.           - pertinent copyright and other information
  2567.  
  2568.  Also on DOS systems:
  2569.  
  2570.           - the amount of system RAM available
  2571.           - the amount of disk space available in the current drive
  2572.  
  2573.  Syntax:
  2574.      show version
  2575.      version
  2576. \userdefined
  2577. \variables
  2578.  User-defined function syntax:
  2579.  
  2580.      <function-name> ( <dummy-var> ) = <expression>
  2581.      show functions
  2582.  
  2583.  where <expression> is defined in terms of <dummy-var>.
  2584.  
  2585.  User-defined variable syntax:
  2586.  
  2587.      <variable-name> = <constant-expression>
  2588.      show variables
  2589.  
  2590.  Description:
  2591.  
  2592.      You may define your own functions and variables.  User-defined
  2593.  functions and variables may be used anywhere an expression is called for.
  2594.  Variable and function names are case sensitive;  thus "A" is not
  2595.  equivalent to "a".  A function refers to a general expression and can take
  2596.  one argument (dummy variable).
  2597.  
  2598.  Examples:
  2599.  
  2600.      graphica> w = 2
  2601.      graphica> q = floor(tan(pi/2 - 0.1))
  2602.      graphica> f(x) = sin(w*x)
  2603.      graphica> sinc(x) = sin(pi*x)/(pi*x)
  2604.      graphica> delta(t) = (t == 0)
  2605.      graphica> ramp(t) = (t > 0) ? t : 0
  2606.  
  2607.  The following variables have already been defined for you:
  2608.  
  2609.      pi      = 3.14159
  2610.      e       = 2.71828
  2611.      catalan = 0.91597
  2612.      degree  = 0.01745
  2613.      gamma   = 0.57721
  2614.      goldr   = 1.61803
  2615.  
  2616.  Note:  case matters, e.g., 'Alpha' is different from 'alpha'.
  2617. \show functions
  2618.      The 'show functions' command lists all user-defined functions and their
  2619.  definitions. 
  2620.  
  2621.  Syntax:
  2622.  
  2623.      show functions
  2624. \who
  2625. \show variables
  2626.      The 'who' or 'show variables' commands list all user-defined variables
  2627.  and their values.
  2628.  
  2629.  Syntax:
  2630.  
  2631.      who
  2632.      show variables
  2633.  
  2634.  Example:
  2635.      graphica> who
  2636.  
  2637.  The following variables have already been defined for you:
  2638.  
  2639.      pi      = 3.14159
  2640.      e       = 2.71828
  2641.      catalan = 0.91597
  2642.      degree  = 0.01745
  2643.      gamma   = 0.57721
  2644.      goldr   = 1.61803
  2645.  
  2646.  Also see VARIABLES.
  2647. \bugs
  2648.  Notes:
  2649.  -----
  2650.  
  2651.      No text control characters (see TEXT) when using the hardware font.
  2652.  
  2653.      Subscript/superscript size hasn't been implemented yet.  Use the \S
  2654.  command (described in TEXT) to change the character size of superscripts
  2655.  and subscripts.
  2656.  
  2657.  Help:
  2658.  ----
  2659.  
  2660.      GRAPHICA is under constant revision, updating and being given expanded
  2661.  capabilities.  Prior to each release, the developer strives to verify new
  2662.  features and bug fixes through testing.  However, as inevitably happens with
  2663.  any software, some bugs do survive and show up in user runs.  Users can aid
  2664.  in the problem fixing process by following the guidelines below:
  2665.  
  2666.      a) Report any unusual messages, computed results, format overflows, etc.
  2667.  even though the program appears to have terminated normally.
  2668.  
  2669.      b) For any abnormal program termination, save the input file and all
  2670.  output obtained by running the program.
  2671.  
  2672.      Reported problems will be fixed as quickly as possible.  In most
  2673.  instances, alternate methods or techniques of plot formulation and input
  2674.  are available to permit graphing despite the bug.  All problems
  2675.  encountered with GRAPHICA should be reported to:
  2676.  
  2677.          Antonio Montes
  2678.          Mailbox 13
  2679.          Leiderdorp AA 2350
  2680.          The Netherlands
  2681.  
  2682.  e-mail address:
  2683.  
  2684.          CompuServe: 71031,1162
  2685.          Internet: 71031.1162@compuserve.com
  2686.